我有一个看起来像这样的表:
CREATE TABLE #C
(grpType varchar(10),
CPTCode varchar(10) NULL,
Month int NULL,
MTD money NULL,
MonthCount int NULL,
YTD money NULL,
YearCount int NULL,
Code varchar(10) NULL)
其中包含以下数据:
grpType CPTCode Month MTD MonthCount YTD YearCount Code
Month 76800 5 1321.61 27 6574.54 82 76800
Month 76856 5 246.01 3 380.64 6 76856
Month 76881 5 9778.95 131 50682.59 509 76881
Month 76942 5 22467.33 190 116663.58 674 76942
然后我有这张桌子:
CREATE TABLE #Prod
(grpType varchar(10),
TotalCharges money NULL,
TotalUnits float NULL,
RVU float NULL,
Code varchar(10) NULL,
CPTCode varchar(10) NULL)
有了这些数据:
grpType TotalCharges TotalUnits RVU Code CPTCode
Month 6100.00 12 0 76800 76800
Month -475.00 -1 0 76880 76880
Month 38749.00 81 0 76881 76881
Month 54733.00 114 0 76942 76942
我需要的是我的最终数据看起来像这样:
CPTCode MTD TotalCharges TotalUnits
76800 1321.61 6100.00 12
76856 246.01 NULL NULL
76880 NULL -475.00 -1
76881 9778.95 38749.00 81
76942 22467.33 54733.00 114
实现这一目标的最佳加入是什么?我已经尝试了左连接,但它不起作用我得到这个结果:
CPTCode MTD TotalCharges TotalUnits
76800 1321.61 6100.00 12
76881 9778.95 38749.00 81
76942 22467.33 54733.00 114
其中排除了一些我不想要的数据。有人有什么建议吗?
谢谢
这是不起作用的查询:
SELECT
#C.CPTCode,
#C.MTD,
#Prod.TotalCharges,
#Prod.TotalUnits
FROM
#C
LEFT JOIN #Prod ON #C.grpType = #Prod.grpType AND #C.Code = #Prod.Code
WHERE
(#C.CPTCode = '76800' OR #C.CPTCode = '76856' OR #C.CPTCode = '76880' OR #C.CPTCode = '76881' OR #C.CPTCode = '76942' OR #C.CPTCode = '93922')