我想合併這兩個選擇,但我對SQL不太熟悉。 我想在第二次選擇時使用第一次選擇的這兩列(sAuftrag,sInfo1)的結果數據。在WHERE子句中使用子選擇結果
我必須通過知道SQL命令的OLEDB接口使用MS-Access數據庫。
第一選擇:
SELECT DISTINCT sAuftrag, sInfo1 FROM tblStückliste
結果(計數= 32):
BA15.00929 22
BA15.00929 6, .... ("BA15.00929" is sAuftrag, and "22" is sInfo1)
對於這些32的每個結果,使一個與WHERE子句所接收的數據的第二選擇。
第二選擇:
SELECT ID, (dwStückzahl*dwLänge) AS dwLaufmeter, dwDicke, dwBreite
FROM tblStückliste
WHERE sAuftrag = 'BA15.00929' AND sInfo1 = '22'
結果(計數= 1-4每選擇):
209 34860 17 78
210 47250 17 78
211 110250 17 78
....up to four
我嘗試了很多變化的,以找到一個解決方案,例如
SELECT ID, (dwStückzahl*dwLänge) AS dwLaufmeter, dwDicke, dwBreite, SS.sAuftrag, SS.sInfo1
FROM tblStückliste,
(SELECT DISTINCT sAuftrag, sInfo1 FROM tblStückliste) SS
WHERE sAuftrag = SS.sAuftrag AND sInfo1 = SS.sInfo1
編輯:##########################
OK,我的表中有屬於一起條目。這些條目可以通過字段sAuftrag和sInfo1來標識。所以你可以稱它爲組,我的表中有一組條目。下一步是計算(dwStückzahl*dwLänge)AS dwLaufmeter並獲得每個條目的ID,dwDicke,dwBreite。
此外,我想將一個組中所有條目的dwLaufmeter加起來。
目標應該是瞭解每個組的dwLaufmeter以及組中所有條目的所有ID。
這兩個選擇在那裏給我正確的數據,但我想在一個SELECT語句中做到這一點。
爲什麼'SELECT ID,(dwStückzahl*dwLänge)AS dwLaufmeter,dwDicke,dwBreite,sAuftrag,sInfo1 FROMtblStückliste'不能滿足您的要求,這是不是很清楚倫斯。發佈某些輸入的預期輸出。 –
也使用GROUP BY功能 –
您實際使用哪種RDBMS?你已經標記了mysql和sql-server,並且你說問題中的Access?這是哪一個?不能全部。 –