Общие > Базы данных

Не тот результат какой хочу

<< < (4/5) > >>

commander:
Rodent
хотя на колонку date опираться в этом случае конечно можно, когда дело касаеться банального форума... а вообще более правильный вариант будет таким, как я уже писал:

--- Цитировать ---SELECT MAX(pid) FROM we_posts WHERE forum_id = \'2\'
идея понятна?
--- Конец цитаты ---

лучше опираться на id, из чего следует следующее... :
SELECT DISTINCT t.*, (SELECT date FROM we_posts WHERE topic_id=t.tid AND pid=(SELECT MAX(pid) FROM we_posts WHERE topic_id=t.tid)) AS date, (SELECT author FROM we_posts WHERE topic_id=t.tid AND pid=(SELECT MAX(pid) FROM we_posts WHERE topic_id=t.tid)) AS author FROM we_posts p, we_topics t WHERE t.tid=p.topic_id AND p.forum_id=1

Меняздесьдавнонет:
идея понятна. без вложенных селектов шагу не можем ступить.
впрочем, это тоже очевидно. для того, чтобы сделать нормальный джойн, надо понимать, что такое бд. А это тоже не всем дано.
сочувствую.

commander:
RomikChef
мне бы хотелось посмотреть твоё решение... коль тебе дана такая чудесная возможность использовать "нормальный джойн" поделись своими соображениями по этому поводу... я думаю всём будет интересно...! :)

P.S. На мой взгляд проще да и понятнее для человека написать решение со вложенными селектами... Возрази...

Phoinix:
commander

Ну дяденька... Вы наверно космические корабли запускаете... :).

Все гораздо проще...

SELECT
MAX(t2.pid) AS older, t3.*
FROM `we_topics` AS t1, `we_posts` AS t2 , `we_posts` AS t3
WHERE t1.forum_id = \'1\' AND t1.tid = t2.topic_id
GROUP BY t1.tid, t3.pid
HAVING t3.pid = older

И все... ;)

P.S. "Вложенные селекты" - не панацея...

P.P.S. Ой опечатался в MAX(t2.pid), а то сейчас начнут копировать без разбирательств... :)

Rodent:
SELECT t1 . * , max( t2.date ) AS last, MAX( t2.pid ) AS older, t3 . *, count(*)
FROM `we_topics` AS t1, `we_posts` AS t2, `we_posts` AS t3
WHERE t1.forum_id = \'2\'
AND t1.tid = t2.topic_id
GROUP BY t1.tid, t3.pid
HAVING t3.pid = older
ORDER BY last DESC

Вот все пошло, мне просто еще надо было вытаскивать дату и количество постов в данной теме

Огромное спасибо всем.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии