Term2
Дата: 17.09.2006 14:31:55
Допустим есть таблица Покупки, в ней поле Товар. Я первым запросом выбираю все неповторяющиеся товары, потом для каждого товара считаю количество повторений другим запросом. Теперь мне нужно все вывести в таблицу и упорядочить по количеству повторений. Как это лучше сделать?
Александр Волок (def1983)
Дата: 17.09.2006 14:37:56
Не забывайте о скриптовании таблиц и данных. Никто не будет это делать за Вас.
Tigrita
Дата: 17.09.2006 14:40:25
А зачем делать это двумя запросами, можно же одним:
Select tovari, count(*)
from pokupki
group by tovari.
Anatoly Podgoretsky
Дата: 17.09.2006 14:41:09
Лучше это сделать одним запросом, зачем кучу городить.
И похоже что ты недолюбливаешь BOL
Anatoly Podgoretsky
Дата: 17.09.2006 14:42:16
Tigrita |
Select tovari, count(*) from pokupki group by tovari. |
group by count(*) ASC/DESC
Term2
Дата: 17.09.2006 15:24:16
SELECT DISTINCT Товар, Count(Товар) FROM Покупки ORDER by Count(Товар) DESC
Так? У меня выдает ошибку
Column 'Покупки.Товар' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause
Anatoly Podgoretsky
Дата: 17.09.2006 15:33:18
А перевести на русский не судьба и посмотреть в BOL
Anatoly Podgoretsky
Дата: 17.09.2006 15:34:51
Anatoly Podgoretsky |
Tigrita | Select tovari, count(*) from pokupki group by tovari. |
group by count(*) ASC/DESC |
Прошу прощения, перепутал с order? это надо просто добавить к group
Владимор Конев
Дата: 18.09.2006 05:40:14
Term2 |
SELECT DISTINCT Товар, Count(Товар) FROM Покупки ORDER by Count(Товар) DESC
Так? У меня выдает ошибку Column 'Покупки.Товар' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause |
Напиши вот так :
SELECT Товар,
Count(Товар) as cnt
FROM Покупки
GROUP BY Товар
ORDER by cnt DESC
и иди читай книги по языку запросов SQL...
1)
Книга 12)
Книга 23)
Книга 3