Флаг is_active принимает только 0 или 1. Какое условие истинно для любой строки и не отфильтрует ни одной?

Ais_active = 1 AND is_active = 0
BNOT (is_active = 1) AND is_active = 1
Cis_active = 1 OR is_active = 0
Dis_active = 1 AND NOT (is_active = 0)
Правильный ответ. Если флаг может быть только 0 или 1, то is_active = 1 OR is_active = 0 истинно для любой строки и является тавтологией.

Разбор

Это пример тавтологии: вы перечислили все возможные значения флага и соединили их OR. Такой фильтр часто появляется случайно, например при ошибочном объединении условий. На собеседовании полезно уметь быстро распознавать всегда истинные условия, потому что они маскируют ошибки сегментации.

Можно заниматься бесплатно

Готовим вопросы…

Три вопроса по теме этой страницы, с объяснениями.

Открыть Карьерник в браузере

Ещё вопросы по теме «Булева логика и фильтры»