繁体   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