Q:

Выборка в sql и вывод нескольких полей

я в sql пока не очень.  Помогите, пожалуйста разобраться и построить выборку правильно.  Есть таблица с множеством полей, нужно из этой таблицы выбрать только поля с минимальным значением по типу like_1 BETWEEN 1 AND 4, ячейки, которые не входят в свой диапазон оставить пустыми.  
"SELECT `clerk_id`, `like_1`, `like_2`, `like_3`, `like_4`, `like_5`, `like_6`, `like_7`, `like_8`, `like_9`, `like_10`, `like_11`, `like_12`, `like_13`, `like_14`, `like_15`, `like_16`, `like_17`, `like_18`, `like_19`, `like_20`, `like_21` FROM ".$selected_operator."  WHERE like_1 BETWEEN 1 AND 3 OR like_2 = 3 OR like_3 = 2 OR like_4 BETWEEN 7 AND 10 OR like_5 BETWEEN 4 AND 5 OR like_6 BETWEEN 10 AND 15 OR like_7 BETWEEN 4 AND 5 OR like_8 BETWEEN 4 AND 5 OR like_9 BETWEEN 7 AND 10 OR like_10 BETWEEN 5 AND 10 OR like_11 BETWEEN 4 AND 5 OR like_12 BETWEEN 4 AND 5 OR like_13 = 2 OR like_14 BETWEEN 4 AND 5 OR like_15 BETWEEN 4 AND 5 OR like_16 BETWEEN 4 AND 5 OR like_17 BETWEEN 4 AND 5 OR like_18 = 0;";

Вот что я накидал, но ведь есть же способы сделать нормально.  Буду рад любому совету либо источнику информации где я могу это посмотреть) Заранее спасибо

A:

Ответ на вопрос дал @Mike.  Он верный.  Не правильно построена бд.  Спасибо за помощь, пересмотрю строение бд. 

В SQL есть только один способ сделать это нормально.  Нужно переделать таблицу, что бы она соответствовала первой нормальной форме (ru.wikipedia.org/wiki/…) т.е.  разбить ее на 2 таблицы.  в первой будет только clerk_id и возможно еще какие то единичные поля, описывающие его.  Во второй таблице будут поля clerk_id, like_num, value.  Соответственно данные кладутся отдельными строками.  и вот тогда запрос будет select clerk_id from tab2 where value BETWEEN 4 AND 5

