- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
# Query_time: 1 Lock_time: 0 Rows_sent: 50807 Rows_examined: 160282
SELECT `node`.id, (
TO_DAYS( NOW( ) ) - TO_DAYS( `node`.datecreate )
) AS countDay, (
`rating_node`.up - `rating_node`.down
) AS countRating, COUNT( `comments`.cid ) AS countComments, `node`.view AS countViews
FROM node
LEFT JOIN `rating_node` ON `rating_node`.node_id = `node`.id
LEFT JOIN `comments` ON `comments`.nid = `node`.id
GROUP BY `node`.id;
alexoy 28.09.2011 12:57 # −10
PS:
>2011 год
>SQL
минус
Nemoden 28.09.2011 13:34 # +6
Lure Of Chaos 28.09.2011 21:43 # 0
что это, мутация, что ли?
bugmenot 29.09.2011 02:42 # 0
Teddy_Brown 29.09.2011 10:12 # 0
Venomous 28.09.2011 13:05 # 0
потом на каждую строку результата делает инсерт с новым рейтингом
ну а вообще половина запросов в сайте не используют индексы
Nemoden 28.09.2011 13:39 # +2
Мне кажется, фрилансер сделал свою работу, получил (?) свои деньги. В этом плане я бы был на стороне программиста.
Может быть этот код писался когда еще не было столько много строк в таблицах... тогда всё норм.
В общем, без знания полной картины невозможно сказать, что это - говнокод. Явных перлов в этом коде нет, то есть, извините, минус.
i-- 28.09.2011 13:43 # 0
Во втором случае вполне нормально.
Venomous 28.09.2011 13:58 # 0
надо было лучше выбирать запрос,
самый долгий починился 1 индексом и заменой порядка джоинов