我有两张桌子。
tbl地址
主键 | 地址类型 | 地址 |
---|---|---|
1234 | LOC | 123 ST. |
1234 | 马尔 | 456 TER |
tbl帐户信息
主键 | 地址 |
---|---|
1234 | 123 ST. |
5678 | XYZ 大道 |
我想要的是,如果帐户在 tblAddress 中有邮寄地址(MAL),则可以选择该地址 地址,如果没有选择帐户地址。
我尝试使用基于addresstype列和accountinfo地址列的or语句,但似乎总是选择帐户信息地址,即使另一个可用。
您需要在 PrimaryKey 上连接这些表,并在字段列表中使用 CASE WHEN 语法。像这样的东西:
SELECT CASE WHEN a.AddressType = 'MAL' THEN i.Address ELSE a.Address END as final_address
FROM tblAddress a
LEFT JOIN tblAccountInfo i on a.PrimaryKey = i.PrimaryKey