2013-03-13 136 views
1

例如,我有一個查詢Q,返回客戶ID與辦公室。 但是,我有一個單獨的查詢S,其中包含應在特定上下文中硬編碼到亞特蘭大的客戶ID列表。如何在查詢中替換某個值,如果它滿足某些條件?

因此,如何將我說「運行查詢Q,但如果客戶ID存在於S,然後,而不是使用正常辦公值,使用從S辦公室值」

實施例Q:查詢:選擇客戶ID,任期自sourceTable會

實例S:表:列表客戶ID的

所以對於我是否顯示q乘以本身假設的例子,我有:

JONES1  Las Vegas 
SMITH2  Miami 

但JONES1是S,所以我希望它實際顯示

JONES1  Atlanta 
SMITH2  Miami 

(所有CUSTID S中的應顯示亞特蘭大,當我拉起Q)

+0

使用查詢設計窗口,添加兩個表並添加聯接,方法是將相關字段從一個表拖到另一個表中,右鍵單擊剛剛拖動的行,並確保從Q中選擇了所有記錄,並且只從S中選擇了相關記錄。選擇你想要的字段。切換到SQL視圖並將sql發回到這裏,並附上關於哪裏不適合您的需求的說明(如果有)。 – Fionnuala 2013-03-13 20:42:25

+0

您可以在查詢S上使用主查詢中的Nz()函數進行外連接。如果您編輯問題以顯示查詢Q和查詢S,我可以更好地解釋。 – grahamj42 2013-03-13 20:43:26

+0

用一些示例SQL更新了OP – DoubleBass 2013-03-13 20:47:36

回答

0

嘗試在這些線路上的東西:

SELECT q.CustID, IIf(IsNull(s.Office), q.Office, s.Office) 
FROM SourceTable q 
LEFT JOIN s 
ON q.CustID = s.CustID 
+0

我的Q查詢實際上比我所示的要複雜得多;有沒有辦法從設計視圖窗口做到這一點? – DoubleBass 2013-03-13 20:59:04

+0

也許你沒有機會閱讀我對你的文章的評論,該文章描述瞭如何使用查詢設計窗口來實現這一點? – Fionnuala 2013-03-13 21:03:05

+0

我剛剛再次看到它,這就是爲什麼我繼續前進並接受這個答案。謝謝! – DoubleBass 2013-03-13 21:03:41

相關問題