Вираз WHERE команди SELECT дозволяє визначити предикат (умову), результат якого може бути false або true для кожного рядка таблиці.
Результатом розділу WHERE є таблиця, яка складається з тих рядків, для яких результатом обчислення умови пошуку є true. Якщо умова виборки включає підзапити, тоді кожний підзапит обчислюється для кожного кортежу отриманої за допомогою запиту таблиці.
Серед предикатів умов пошуку у відповідності з SQL можуть знаходитися наступні предикати: предикат порівняння, предикат between, предикат in, предикат like, предикат null, предикат з квантором і предикат exists. Відразу відмітимо, що в усіх реалізаціях SQL на ефективність виконання запиту істотно впливає наявність в умові пошуку простих предикатів порівняння (предикатів, які задають порівняння стовпчика таблиці з константою). Наявність таких предикатів дозволяє СУБД використовувати індекси при виконанні запиту, тобто уникати повного перегляду таблиці. Хоча в принципі мова SQL дає можливість користувачам не піклуватися про конкретний набір предикатів в умові виборки (аби вони були синтаксично і семантично правильні), при реальному використанні SQL-орієнтованих СУБД такі технічні деталі потрібно пам`ятати.