2013-10-02 42 views
0

我們正在開發一個PHP頁面來創建一些報告。我們正在使用來自第三方應用程序「填充」的數據庫中的數據。SQL Join - 同一行中的多個表格

我們需要執行一個查詢來選擇一個週期之間的「票據」並從另一個表中選擇其他數據。

實施例:

//Select tickets closed between dates 
SELECT * 
FROM ticsummary 
WHERE resolution_date between #07/04/2013# AND #08/04/2013#; 
 
//Result 
Ticket Resolution_date 
61968 07/04/2013

這(以上)工作很大。但是,我們需要添加名爲ticFieldVals的另一個表中的內容。從這個表格的內容是:

 
ticId fieldId intVal numVal strVal 
61968 1   4  NULL NULL 
61968 2   3  NULL NULL 
61968 3   2  NULL NULL 
61968 100  2  NULL NULL 
61968 103  NULL 300.000 NULL 
61968 85253767 0  NULL NULL 
61968 73913495 1  NULL NULL 
61968 23260488 NULL NULL NULL 
61968 83015458 1  NULL NULL 
61968 33742201 1  NULL NULL 
61968 57589628 1  NULL NULL 
61968 91660570 NULL NULL NULL 

所以我需要執行一個「加入」,這兩個表中只有一個表。然而ticFieldVals的內容有很多行,我需要將所有行放在一起。

我敢肯定,如果你能完全理解,但任何幫助,不勝感激。

+0

您正在使用什麼數據庫?如果是Oracle,這應該是可能的,詳細解釋如下文章:http://www.oracle-base.com/articles/misc/string-aggregation-techniques.php –

+0

你的一些行有6列,而其他行有5 ?? –

+0

對不起,我正在使用SQL Server 2008. – user2840263

回答

0

你嘗試:

//Select tickets closed between dates 
SELECT * 
FROM ticsummary t join ticFieldVals tt on (t.Ticket=tt.ticId) 
WHERE resolution_date between #07/04/2013# AND #08/04/2013#; 
+0

你錯過了部分問題,他們說「ticFieldVals'的內容有很多行,我需要把所有在一起放在同一行「。他們只需要每張票一行,所有'ticFieldVals'連接到一個字段。 – Tony

+0

你好Cedric,當我執行這個命令時,我得到了不止一行,但我只需要在一行中,把它放在PHP(html)表... – user2840263

+0

對不起,我誤解了這個問題。 –