我有一張表(與多個其他表相關),我想過濾其中一列(RequesterID) - 該列將是一個組合框,其中只有非銷售人員可以選擇。如何過濾SQL Server SQL查詢中的某一列
這裏是「未過濾」查詢時,讓調用它QUERY 1:
SELECT RequestsID, RequesterID, ProductsID
FROM dbo.Requests
如果使用一個單獨的查詢,讓稱之爲QUERY 2,過濾RequesterID(其是相關列中的人物,連接到People.PeopleID),它是這樣的:
SELECT People.PeopleID
FROM People INNER JOIN
Roles ON People.RolesID = Roles.RolesID INNER JOIN
Requests ON People.PeopleID = Requests.RequesterID
WHERE (Roles.Role <> N'SalesGuy')
ORDER BY Requests.RequestsID
現在,有「合併」,查詢到2查詢1的方法嗎?
(詢問1 dbo.Requests已RequesterID人口從dbo.People外鍵,所以有沒有問題......這些連接都沒事,只是不知道怎麼寫SQL查詢!)
UPDATE
試圖解釋什麼,我的意思是在多一點...:
結果集應該是多個請求 - 和請求的數量不應該由QUERY 2限制QUERY 2:唯一的功能是限制可選子集列Requests.RequesterID - 不,這不是很清楚,但在C#VS2008實現中,我使用Requests.RequesterID最終使用[全名](它是People表中的另一列)填充ComboBox,並在那一欄我不想讓SalesGuy儘可能地顯示出來;這裏我正嘗試清除它更...(但有錯誤的語法,當然)
SELECT RequestsID, (RequesterID WHERE RequesterID != 8), ProductsID
FROM dbo.Requests
是,RequesterID 8恰好是SalesGuy :-)
你是什麼意思合併? – 2010-05-21 11:21:42
我的意思是填充我想要的peopleid的名單,以某種方式查詢2應該能夠與查詢1在一個單一的查詢一起工作 - 合併是也許不是最好的詞,但我不知道如何把它其實 - 我希望這可以爲你清除。 – 2010-05-21 11:49:14
我已經更新了我的答案。逐漸回暖? – 2010-05-21 12:16:29