iliah
Новичок
как используя group by осуществить сортировку
нашел только этот топик без ответа:
http://phpclub.ru/talk/showthread.php?s=&threadid=28694
вопрос в сущности тот же:
есть две таблицы
table1
[sql]CREATE TABLE `table1` (
`id` INT NOT NULL ,
PRIMARY KEY ( `id` )
);[/sql]
table2
[sql]CREATE TABLE `table2` (
`id` INT NOT NULL ,
`parent` INT NOT NULL ,
`date` DATE NOT NULL ,
PRIMARY KEY ( `id` )
);[/sql]
тестовые данные
[sql]INSERT INTO `table1` ( `id` )
VALUES (
'1'
);
INSERT INTO `table2` ( `id` , `parent` , `date` )
VALUES (
'1', '1', '2005-06-20'
), (
'2', '1', '2005-06-21'
);
[/sql]
table2.parent = table1.id
запрос
[sql]SELECT * FROM table1, table2
WHERE table1.id = table2.parent
GROUP BY table1.id[/sql]
возвращает запись с датой '2005-06-20'
в то время как требуется получить по последней (по дате - '2005-06-21') записи для каждого уникального table1.id
нашел только этот топик без ответа:
http://phpclub.ru/talk/showthread.php?s=&threadid=28694
вопрос в сущности тот же:
есть две таблицы
table1
[sql]CREATE TABLE `table1` (
`id` INT NOT NULL ,
PRIMARY KEY ( `id` )
);[/sql]
table2
[sql]CREATE TABLE `table2` (
`id` INT NOT NULL ,
`parent` INT NOT NULL ,
`date` DATE NOT NULL ,
PRIMARY KEY ( `id` )
);[/sql]
тестовые данные
[sql]INSERT INTO `table1` ( `id` )
VALUES (
'1'
);
INSERT INTO `table2` ( `id` , `parent` , `date` )
VALUES (
'1', '1', '2005-06-20'
), (
'2', '1', '2005-06-21'
);
[/sql]
table2.parent = table1.id
запрос
[sql]SELECT * FROM table1, table2
WHERE table1.id = table2.parent
GROUP BY table1.id[/sql]
возвращает запись с датой '2005-06-20'
в то время как требуется получить по последней (по дате - '2005-06-21') записи для каждого уникального table1.id