я столкнулся с очень странной проблемой сегодня при использовании функции MySQL GROUP_CONCAT
:Странное поведение GROUP_CONCAT в MySQL
У меня есть следующий запрос:
SELECT SUM(total) FROM order WHERE customer_id='X' AND order_status_id IN ((SELECT GROUP_CONCAT(order_status_id SEPARATOR ',') FROM order_status WHERE profit='1'))
но что возвращает NULLL, однако:
SELECT SUM(total) FROM order WHERE customer_id='X' AND order_status_id IN (1,2,3,4,5,6,7,8)
это работает так же, как и первый запрос для объединения идентификаторов состояния, сгруппированных, однако они возвращают NULL как итоговые
Связанный: http://stackoverflow.com/questions/4155873/find-in-set-vs-in –