LINUX.ORG.RU
вот блин из пушки по воробьям. сам разлбрался

select t1.id, sum(t1.val) from t1, t2 where t1.id=t2.id group by t1.id;

x86 ★★
() автор топика
Ответ на: комментарий от x86
select t1.id, sum(t1.val) from t1 join t2 on t1.id=t2.id group by t1.id;
так будет быстрее если у тебя индексы юзаются. и особенно форейн кеи в postgres. не уверен но для мускуля наверное тоже кашернее Ж)
godexsoft
()
Ответ на: комментарий от godexsoft
Быстрее не будет
Конструкция
select * from t1, t2 where t1.key = t2.key
эквивалентна
select * from t1 join t2 on t1.key = t2.key

Кстати, думается что в постгресе аналогично должно быть.
roller ★★★
()
Ответ на: комментарий от roller
Это только когда нету foreign key / indexes.
Left join с индексами и кеями самое быстрое, сам только что сталкивался с этим, тестил на postgres.
godexsoft
()
Ответ на: комментарий от godexsoft
в MySQL (по крайней мере в 5.0.2 было так, в исходниках функция JOIN::optimize) t1.id=t2.id из join переносилось в where
vadiml ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.