[英]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.