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