Добавить условие сортировки в SQL запросе

Есть SQL запрос:

SELECT p.*, pp.quantity FROM oc_product AS p INNER JOIN oc_product_description AS pd ON (pd.product_id = p.product_id) INNER JOIN oc_product AS pp ON (pp.product_id = p.product_id) WHERE pd.language_id = '1' ORDER BY pp.quantity =0 ASC, pp.image !='' DESC, LCASE(pp.date_added) DESC LIMIT 0, 34

Так же еще есть таблица oc_product_attribute, в которой - product_id, attribute_id, text

Задача: в первоначальную выборку добавить сортировку по принципу - если в таблице oc_product_attribute найден attribute_id со значением 30 и его text не пустой, то выводить запись в начале списка. Если такой записи не найдено, то выводить с конца списка. При этом это лишь условие для сортировка. Даже если p.product_id не будет найден в oc_product_attribute, результат всё равно должен выводиться.

Как это можно сделать?


Ответы (0 шт):