По мотивам нового движка блога
13 марта 2007 года, 14:08
PHP меня радует такими вещами (хотя заслуги PHP в этом особой нет, это типичный синтаксис C):
while ($row = mysql_fetch_row($result))
$tag_ord[$a[] = $row[0]] = ++$i;
А вот MySQL порадовал меня следующим:
SELECT
recs.c_time,
title,
recs.text,
recs.url,
commented,
count(if(comms.id = recs.id, 1, NULL))
FROM recs, rectags, comms
WHERE recs.id = rectags.record_id
AND tag_id = 5
AND published = 1
GROUP BY recs.id
ORDER BY recs.c_time DESC
Добавлено 13.12.2007: А сейчас MySQL радует меня возможностью написать такой запрос:
SELECT s.id, b.title, b.c_time, b.url,
FROM (
SELECT rec.id, label
FROM (
SELECT record_id
FROM rectags
WHERE tag_id = 4
) tt, recs
WHERE recs.id = tt.record_id
AND recs.label <> ''
) s, recs b
WHERE s.label = b.label
AND b.id <> s.id
ORDER BY 3 DESC
Оставьте свой комментарий