Условный столбец для запроса на основе других столбцов в MySQL

Если вы имеете в виду «вызовы API, которые отправляются в результате загрузки JavaScript для страницы A», то вы захотите использовать localStorage для сохранения информации в браузере по всей странице грузы. Чтобы реализовать это, вы должны будете предоставить логику, которая проверяет localStorage «кэшированную» информацию перед вызовом API для данных. Таким образом, если ваш пользователь нажмет кнопку «Назад» в браузере, JavaScript проверит, что уже есть данные из API в localStorage, а затем пропустит выполнение вызова API.

Примечание: вам нужно будет localStorage.clear() или localStorage.removeItem('itemKey') удалить элемент, если вы хотите очистить «кэшированные» данные. Эта логика будет зависеть от вашего варианта использования.

Примером может быть следующий:

@Component({
  selector:    'app-hero-list',
  templateUrl: './hero-list.component.html'
})
export class HeroListComponent implements OnInit {

  constructor(private heroService: HeroService) {}

  ngOnInit() {
    if (!window.localStorage.getItem('myData')) {
      this.heroService.loadData().subscribe(
        (data) => window.localStorage.setItem('myData', JSON.stringify(data))
      );
    } else {
      // Load the data by parsing the stored JSON string:
      // const data = JSON.parse(window.localStorage.getItem('myData'))
    }
  }
}

12
задан Gergo Erdosi 18 May 2014 в 12:21
поделиться

2 ответа

select User_id
,case 
    when (YEAR(DOB) < 1980 AND Job_Title = "manager")   then 'Old Fart'
    when (YEAR(DOB) < 1980 AND Job_Title = "associate") then 'Old Timer'
    when (YEAR(DOB) > 1980 AND Job_Title = "manager")   then 'Eager Beaver'
    when (YEAR(DOB) > 1980 AND Job_Title = "associate") then 'Slacker'
    else 'nobody'
end
as Real_Title 
from users
25
ответ дан 2 December 2019 в 03:49
поделиться

Если я правильно понял, я думаю, вы ищете оператор CASE :

SELECT User_id,
        (CASE
            WHEN YEAR(DOB) < 1980 AND Job_Title = "manager" THEN "Old Fart"
            WHEN YEAR(DOB) < 1980 AND Job_Title = "associate" THEN "Old Timer"
            ...
            ELSE "Unknown Title"
        END) AS Real_Title
FROM users;
14
ответ дан 2 December 2019 в 03:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: