групировка в запросе

Модераторы: kdv, CyberMax

Ответить
Attid
Спец
Сообщения: 377
Зарегистрирован: 14 ноя 2006, 09:58

групировка в запросе

Сообщение Attid » 29 апр 2007, 14:47

ворос наверно глупый =) и полетят табуретки , но спрошу
как правельнее будет сформировать запрос
так

Код: Выделить всё

  for select di.name , count(1) , sum(cm.money), di.id
        from cards_money cm
        join dev_items di on cm.id_di = di.id
       group by di.name, di.id
или так

Код: Выделить всё

  for select min(di.name), count(1) , sum(cm.money), di.id
        from cards_money cm
        join dev_items di on cm.id_di = di.id
       group by di.id
а может так ?

Код: Выделить всё

  for select di.name , count(1) , sum(cm.money), max(di.id)
        from cards_money cm
        join dev_items di on cm.id_di = di.id
       group by di.name
результат не изменится, но идеологически правельнее как ?

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 30 апр 2007, 00:26

Мне нравится первый.
Второй тоже нормален, просто не нравится :)
Третий может скрыть ошибку в данных - если два одинаковых имени возникнет, он их просуммирует.

Ответить