gpt4 book ai didi

sql-server - 使用 "or"运算符的 T-SQL 左连接

转载 作者:行者123 更新时间:2023-12-04 01:55:27 25 4
gpt4 key购买 nike

我有以下查询,我想在一场比赛中拉入其中一个或两个。一名成员(member)可以有多个 ID 或 HIC。因此,如果 member ID = member ID 则提取最新 HIC 的 max (loaddate) 同样,如果 HIC = HIC 提取具有 max (loaddate) 的成员 ID 。我想包括左连接,以防两种情况都找不到匹配项。

代码:

 SELECT 
CH1.*
,AVM.MBR_ID
,AVM.HIC
,AVM.MBR_LST_NM
,AVM.MBR_FST_NM
,CAST(AVM.MBR_BIRTH_DT AS DATE) AS 'MBR_BIRTH_DT'
,AVM.LOADDATE
FROM
#CHECK1 CH1
LEFT JOIN
AVRIL.DBO.VW_MBR AVM ON (CH1.HICN = AVM.HIC OR CH1.MEMBER_ID = AVM.MBR_ID)
WHERE
CH1.HEALTH_PLAN = 'AVRIL'
AND AVM.LOADDATE=(SELECT MAX(LOADDATE) FROM AVRIL.DBO.VW_MBR)

谢谢,迈克尔

最佳答案

当您在 where 子句中使用 VW_MBR 表中的字段时,它会有效地将左连接 转换为内部连接加入。将条件放入连接中:

...
FROM #CHECK1 CH1
LEFT JOIN AVRIL.DBO.VW_MBR AVM ON (CH1.HICN = AVM.HIC OR CH1.MEMBER_ID = AVM.MBR_ID)
AND AVM.LOADDATE=(SELECT MAX(LOADDATE) FROM AVRIL.DBO.VW_MBR)
WHERE CH1.HEALTH_PLAN = 'AVRIL'

关于sql-server - 使用 "or"运算符的 T-SQL 左连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29833294/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com