Задать вопрос

Как понять запрос к MySQL?

...WHERE f=1 
AND tab.site_id = '5568' 
AND YEAR(user_payment) =  '2016' 
AND MONTH(user_payment) =  '6'
ORDER BY

Что в этом запросек указывается в скобках?
  • Вопрос задан
  • 199 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • Shultais Education
    Продвинутый SQL
    1 месяц
    Далее
  • Merion Academy
    Основы реляционных баз данных SQL
    1 месяц
    Далее
Решения вопроса 1
Melkij
@Melkij
DBA для вашего PostgreSQL?
Это то, как НЕ надо делать фильтр, если нужны строки за определённый месяц.
Потому что mysql не умеет функциональные индексы, значит если даже индекс подходящий по дате есть - использоваться он не будет. Должно быть:
WHERE f=1 
AND tab.site_id = '5568' 
AND user_payment >=  '2016-06-01' 
AND user_payment <  '2017-07-01'

Что отлично пойдёт по индексу, например, site_id, user_payment. Надо ли сюда включать f - смотрите ваши данные, вам лучше знать вашу базу.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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