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

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

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

Что в этом запросек указывается в скобках?
  • Вопрос задан
  • 199 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Python-разработчик
    10 месяцев
    Далее
  • Академия Eduson
    Python-разработчик
    9 месяцев
    Далее
  • Merion Academy
    Базы данных с нуля
    2 месяца
    Далее
Решения вопроса 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 - смотрите ваши данные, вам лучше знать вашу базу.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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