2011-07-18 55 views
0

這是我的SQL查詢:MySQL - 如果表A是左連接到表B,那麼我如何在表B中的字段ORDER BY?

SELECT pts.pts_id, 
      pts.pts_name, 
      meds.* 
    FROM pts 
      LEFT JOIN meds 
      ON pts.pts_id = meds.pts_id_fk 
    WHERE pts.id_fk = $id 
     AND pts_current = 1 

pts(即表A)具有以下數據:

pts_id time 
1  Joe 
2  Jack 
3  Jill 

meds(即表B)具有以下數據:

pts_id_fk time 
1   7AM 
1   8AM 
1   9AM 
2   7AM 
2   10AM 
3   11AM 

我想ORDER BY該查詢結果基於time

任何建議如何做到這一點?

回答

2
SELECT pts.pts_id, 
      pts.pts_name, 
      meds.* 
    FROM pts 
      LEFT JOIN meds 
      ON pts.pts_id = meds.pts_id_fk 
    WHERE pts.id_fk = $id 
     AND pts_current = 1 

ORDER BY pts.pts_id, meds.time 
+0

這是做的 - 謝謝@ michael – pepe

1

嚴正約ORDER BY meds.time

+0

喜@zerkms什麼 - 我應該在哪裏把它到底是什麼? – pepe

+0

@torr:在最後的查詢 – zerkms

+0

我試過了,它最終重新排序'pts'記錄而不是'meds.time'記錄 – pepe

相關問題