2012-02-10 56 views
3

讓說我有三個表(郵局,牆,照片)MySQL查詢李樹斌差異場

後(ID,post_uid,POST_CONTENT,post_timestamp)

牆(ID,wall_from,wall_to,wall_content, wall_timestamp)

照片(ID,photo_gid(從畫廊的id引用),PHOTO_CAPTION,photo_filename,photo_timestamp)

所有我想要做的是加入這三個表,但是順序是從post_timestamp,wall_timestamp和photo_timestamp成SINGL e查詢或單個結果。

我應該怎麼辦?我應該創建新表,還是可以從三個領域訂購?

回答

1

要通過最新的第一

select * 
from post 
join wall on ... 
join photo on ... 
where ... 
order by greatest(post_timestamp, wall_timestamp, photo_timestamp) desc 

訂購或由最早的第一個命令:

... 
order by least(post_timestamp, wall_timestamp, photo_timestamp) 
+0

謝謝,我會嘗試這個:) – 2012-02-10 13:49:29

+0

@tegaralaga注意編輯 - 我最初有錯誤的函數 – Bohemian 2012-02-10 13:51:30