Данный запрос почему-то возвращает "Empty set" на mysql 5.6 и выше. На mysql 5.5 запрос прекрасно работает и выдает список из одного столбца product_id. Помогите переделать, пожалуйста. Или что в этом запросе не так? Что изменилось в 5.6? Тип таблиц: MyISAM
SELECT `product_id`
FROM `characteristic_value_product`
WHERE `characteristic_value_id` IN ('22')
GROUP BY `product_id`
HAVING COUNT(1) IN (SELECT COUNT(1)
FROM (SELECT distinct characteristic_id
FROM characteristic_values
WHERE id IN ('22')
) char_val
);
И так, отвечу сам на свой вопрос. Все гораздо проще, чем я думал. Уже рабочий запрос имеет данный вид:
SELECT product_id
FROM characteristic_value_product
WHERE characteristic_value_id IN ('22')
GROUP BY product_id
HAVING COUNT(1) = 1 IN (SELECT COUNT(DISTINCT characteristic_id)
FROM characteristic_values
WHERE id IN ('22')
);
Дело исключительно в HAVING COUNT(1) = 1
. Алиасы, как подсказали в комментариях для ответа убрал, чтобы было минимум отличий
Доброго времени суток! Прошу помочь, делаю себе проект, бэкенд на nodejs + sqliteВ проекте есть чат, без каналов, просто 1 на 1
Так я получаю общую сумму пользователя с ID 1, но мне нужно вывести пользователя у которого самый большой баланс
Приветствую всехДелаю небольшую програмку, которая работает с данными (читает файлы и создает свои), пишу на C#