Задать вопрос
@serega_kaktus
Программист-самоучка, фрилансер

Что значит такое условие в MySQL?

Встретилось в коде примерно такое условие where (t.week_days & 1 = 1). Поле week_days типа tinyint.
Если точнее, то в проекте на symfony было выражение ->andWhere('(t.week_days & ? = ?)', array($dayOfWeekBit, $dayOfWeekBit)). Предполагаю, что оно преобразуется в выражение выше
  • Вопрос задан
  • 291 просмотр
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 1
Melkij
@Melkij
DBA для вашего PostgreSQL?
Битовые операции: https://dev.mysql.com/doc/refman/5.7/en/bit-functi...
week_days рассматривается как битовая маска, а не число.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ryakovskiy
каждый нечетный день недели (понедельник - среда - пятница, может быть и воскресенье, если оно идет 7 днем, а не 0). Очень полезно почитать про битовые операции (см. предыдущий ответ)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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