SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 09.09.2008 16:47:02

lemmy
Участник
Зарегистрирован: 07.09.2008
Сообщений: 9

GROUP BY в MySQL

чем опасен GROUP BY в MySQL ??? вообще

Неактивен

 

#2 09.09.2008 17:58:46

Sign
Гуру
Зарегистрирован: 26.06.2008
Сообщений: 43

Re: GROUP BY в MySQL

а он опасен? вообще? ; )

Неактивен

 

#3 10.09.2008 07:34:45

EugeneTM
Гуру
Зарегистрирован: 11.04.2008
Сообщений: 89

Re: GROUP BY в MySQL

Слегка опасен
smile

Лучше сделать SET @@sql_mode:='ONLY_FULL_GROUP_BY'
и тогда такое не пропустит

Код:

mysql> select * from news;
+------+--------+----------+------+
| id | id_dir | announce | dt |
+------+--------+----------+------+
| 1 | 1 | test | 2007 |
| 2 | 2 | test1 | 2007 |
| 3 | 3 | test3 | 2007 |
| 4 | 2 | test4 | 2008 |
| 5 | 3 | test5 | 2008 |
| 6 | 1 | test6 | 2008 |
+------+--------+----------+------+

mysql> select id_dir,announce, max(dt) from news group by id_dir;
+--------+----------+---------+
| id_dir | announce | max(dt) |
+--------+----------+---------+
| 1 | test | 2008 |
| 2 | test1 | 2008 |
| 3 | test3 | 2008 |
+--------+----------+---------+

Внимательно посмотрите какой dt у каких id_dir должен быть и что выдано

Отредактированно EugeneTM (10.09.2008 07:35:26)

Неактивен

 

#4 10.09.2008 19:29:04

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: GROUP BY в MySQL

По-моему, эта конструкция не более опасна, чем, скажем, SELECT 1, когда ожидается
получить 2 smile

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson