У меня есть таблица1 (id, name), table2 (id [FK to table1.id], user_id, visit). Для каждого table1.id мне нужно показать его имя из таблицы1, подсчитать пользователей и показать их user_id, принадлежащий этому id, и когда table2.visit = 1, подсчитать пользователей и показать свой user_id, который принадлежит этому идентификатору, и когда table2.visit = 0. Кроме того, некоторый идентификатор из таблицы1 может отсутствовать в таблице2, для этих идентификаторов я хочу иметь 0 в счетчиках.Приращение одного значения на основе значений столбца и группы mysql
В таблице результат должен выглядеть следующим образом:
id|name|count_visitors|list_of_visitors_id|count_non_visitors|list_of_non_visitors_id|
1 |a |2 |5,10 |1 |4 |
Не могли бы вы помочь с запросом?
отлично. Большое спасибо! Но мой mysql показывает NULL в списках, когда они пусты и blob, когда они не являются. Не могли бы вы предложить причину? старой версии mysql? теперь это 5.1.66 – Anton
С COALESCE (sth_that_can_be_null, 0) нет никакой возможности для какой-либо версии показывать NULL, что она делает - показывает первый аргумент, который не является NULL. Group_concat может возвращать blob для целых чисел, вы можете явно преобразовать свои идентификаторы в строки, чтобы получить строку. – piotrm
'конвертировать (COALESCE (visitors.visitors_list, '') с помощью utf8) AS list_of_visitors_id,' и то же самое для невизеров начал работать, как в ссылке выше! – Anton