2013-08-27 52 views
-4

訂購好吧,這SQL查詢讓我頭疼,希望那裏有一個人誰是以前做過這樣的事情。SQL代碼的數據從相關表

我有兩個表(截)

tblTickets:    tblNotes: 
    ticketno (int)   noteid (int) 
    firmid (int)    ticketno (int) 
    ticket_desc (text)  datecreated (datetime) 
    ...      ... 

了票證可以有很多的注意事項

我需要做的就是創建一個查詢,通過firmid搜索它們是相互關聯(即32)並使用tblNotes.datecreated(訂購最新的第一個)通過其最新的「票據」訂購「票據」

謝謝!

注意: MySQL服務器(5.5.32)

編輯:對於那些已經標記了問題的人:我已經嘗試過了,而且我得到的最成功的SQL是列出所有使用在ticketno上使用JOIN加入的票據和票據,我沒有將這段代碼添加到這個問題中,因爲我猜想我一直在錯誤地討論這個問題,也許我需要使用一個UNION,這個問題我總是覺得很難使用。

我需要它由每張票的最新音符只有搜索。這就是我需要幫助的。

+0

你有嘗試過什麼嗎? – Joren

+0

到目前爲止你做了什麼?結果是什麼? – Randy

+0

@詹姆斯。 。 。這是一個相當基本的查詢。你對SQL有什麼瞭解嗎? –

回答

0

您需要在SQL的WHERE子句中使用子查詢來識別最後一個備註日期,然後加入SQ來限制返回的備註。

下應該足夠多的讓你開始。

SELECT ... 
FROM tblTickets T 
INNER JOIN 
     tblNotes N 
ON  N.ticketno = T.ticketno 
INNER JOIN 
     (SELECT N1.ticketno 
       ,MAX(N1.datecreated) AS last_note_date 
     FROM tblNotes N1 
     GROUP BY 
       N1.ticketno 
     )SQ 
ON  N.ticketno = SQ.ticketno 
AND  N.datecreated = SQ.last_note_date