【发布时间】:2021-03-29 07:57:31
【问题描述】:
我有一个医生 NPI # 列表,我需要将其转换为内部客户 ID #,然后使用这些客户 ID 检查呼叫中心代表上次联系他们的时间。为此,我正在使用两个表,NPI_Conversion(cid,npi)和Call_Center(call_center_cid,customer_name,call_date)。我只想返回从呼叫中心联系客户的最近日期。此查询为我获取所需的数据,但它返回对 NPI 的每次调用:
SELECT call_center_cid, cid, customer_name, caller_name, npi, call_date
FROM CALL_CENTER
LEFT JOIN NPI_CONVERSION
ON call_center_cid = cid
WHERE NPI IN ( # LIST OF RELEVANT NPI #'s)
我看到其他一些帖子使用max(date),所以我尝试这样使用它:
SELECT call_center_cid, cid, customer_name, caller_name, npi, max(call_date) AS recent_call
FROM CALL_CENTER
LEFT JOIN NPI_CONVERSION
ON call_center_cid = cid
WHERE NPI IN ( # LIST OF RELEVANT NPI #'s)
GROUP BY 1, 2, 3, 4, 5
但这只会返回每个 caller_name 的最大日期
【问题讨论】:
-
请用您正在运行的数据库标记您的问题:MySQL、Oracle、SQL Server...?
标签: sql datetime teradata greatest-n-per-group