Задавайте вопросы, мы ответим
Вы не зашли.
Доброго времени суток!
Мне нужно получить имена пользователей с максимальным количеством отгрузок.
Для одной таблицы все работает отлично:
SELECT *, count(*) as n FROM dvd WHERE upload NOT IN ( 'ааа', 'ббб' '...') group by upload HAVING n>0 ORDER BY n DESC LIMIT 8
У меня есть другие таблицы с такой же структурой (знаю - плохой дизайн)
Нужно подключить поиск по ним так же, пробовал:
SELECT *, count(*) as n FROM dvd WHERE upload NOT IN ('ааа', 'ббб' '...') UNION SELECT *, count(*) as n FROM vhs WHERE upload NOT IN ('ааа', 'ббб' '...') group by upload HAVING n>0 ORDER BY n DESC LIMIT 8
Получаю ошибку синтаксиса.
Заранее спасибо за любую помощь
Вал.
Неактивен
http://dev.mysql.com/doc/refman/5.1/en/union.html
To use an ORDER BY or LIMIT clause to sort or limit the entire UNION result, parenthesize the individual SELECT statements and place the ORDER BY or LIMIT after the last one. The following example uses both clauses:
(SELECT a FROM t1 WHERE a=10 AND B=1)
UNION
(SELECT a FROM t2 WHERE a=11 AND B=2)
ORDER BY a LIMIT 10;
Неактивен