簡體   English   中英

IIF語句MS ACCESS VBA SQL

[英]IIF statement MS ACCESS VBA SQL

我有3張桌子

我有一些屬性ID的ConnectivityFile

CHAINDD ,其中我有相同屬性的酒店代碼(可以重復)

Export我想要的所有酒店代碼及其ID的位置(以前表格的聯接)

我可以通過下面的查詢來實現

query2 = "SELECT ConnectivityFile.ID as [Hotel ID], ConnectivityFile.HotelCode  
FROM ConnectivityFile 
INNER JOIN (SELECT DISTINCT CHAINDD.HOTELCODE as [Hotel Code] from CHAINDD) as T 
ON ConnectivityFile.HotelCode = T.[Hotel Code]"

DoCmd.RunSQL "INSERT INTO Export " & query2

現在我面臨的問題是,假設表CHAINDD中的酒店代碼不存在於表ConnectivityFile中。 我想指出的是導出表上的ID為“未連接”。

如何實現呢? 我知道經過一些反復試驗但沒有成功時,會有IIF聲明。 您在哪里放置IIf聲明?

非常感謝您的幫助和時間

只要您的查詢實際可行,IIF就會像這樣:
query2 =“ SELECT IIF(ISNULL(T.HOTELCODE),”“未連接”“,ConnectivityFile.ID)作為[酒店ID],ConnectivityFile.HotelCode
從ConnectivityFile左聯接(從CHAINDD中選擇DISTINCT CHAINDD.HOTELCODE作為CHAINDD的[酒店代碼])作為T ON ConnectivityFile.HotelCode = T. [酒店代碼]“

基本上,如果有代碼,請使用它,否則將字符串放在“未連接”
請注意,導出中的酒店代碼字段必須能夠處理非唯一數據-即:不是主鍵。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM