Перейти к основному содержимому
Перейти к основному содержимому

Оператор WHERE

WHERE оператор позволяет фильтровать данные, поступающие из FROM оператора SELECT.

Если есть оператор WHERE, он должен содержать выражение с типом UInt8. Обычно это выражение с операторами сравнения и логическими операторами. Строки, где это выражение оценивается в 0, исключаются из дальнейших трансформаций или результата.

WHERE выражение оценивается с учетом возможности использования индексов и обрезки разделов, если движок таблицы поддерживает это.

примечание

Существует оптимизация фильтрации, называемая PREWHERE.

Если вам нужно проверить значение на NULL, используйте операторы IS NULL и IS NOT NULL или функции isNull и isNotNull. В противном случае выражение с NULL никогда не пройдет.

Пример

Чтобы найти числа, которые являются кратными 3 и больше 10, выполните следующий запрос на таблице чисел:

Результат:

Запросы с значениями NULL:

Результат: