не пингуется ни в одну ни в другую сторону.
Пробовал как с компьютером на Windows 10 так и на iMac.
Если количество "баллов" категорий совпадает, то должна выводиться только та, которую запросили (извне прилетает ID категории category_id).
Привожу таблицу с тестовыми данными:
если у контакта три категории с total_points 2, 0 и 8 соответственно, то категория этого контакта - 3 (с total_points 8).
в данном запросе должно было вернуться не Шерсть, а 100% полиэстер
SELECT IF( !('100% полиэстер'), '100% полиэстер', 'NULL' )
SELECT IF( ! 100, '100% полиэстер', 'NULL' )
SELECT IF( FALSE, '100% полиэстер', 'NULL' )
Null не может никак интерпретироваться.
а теперь давайте усложним, представим что вложенный запрос возвращает шерсть.
select if('шерсть', 1, 2);
сразу лишаются смысла ибо при отсутствии записи будут давать один и тот же вариант.
ибо кастинг null к boolean работать не будет
Структура таблицы oc_product_attribute
Предположу что стоит это понимать как то что NULL это специфическое значение, и для SQL и попытка привести к булеан через !(NULL) не работает;