我有一组数据可以跟踪客户之间的通信历史。因此每个客户都有自己的活动历史记录(笔记,电子邮件等)。我需要从每个客户的活动历史记录中获取最新条目,其中每一行都是客户活动的最新条目。因此,每一行在客户端ID 上都是唯一的,我们可以调用每个活动“description”。
每个活动都有一个日期,还有一些其他术语,如主题,身体。
activityid | clientid | subject | body | datemodified
谢谢!
答案 0 :(得分:0)
你并没有给我们太多的帮助,但这是一个黑暗的镜头:
SELECT ClientId, body, MAX(DateModified)
FROM Activity
GROUP BY ClientId, body
答案 1 :(得分:0)
SELECT ClientId, Body, MAX(DateModified)
FROM Activity
GROUP
BY ClientId, Body;
答案 2 :(得分:0)
假设SQL Server 2005 +
;with cte AS
(
SELECT activityid, clientid, subject, body, datemodified,
ROW_NUMBER() OVER (PARTITION BY clientid ORDER BY datemodified DESC) AS RN
FROM Activity
)
SELECT activityid, clientid, subject, body, datemodified
FROM cte
WHERE RN=1
答案 3 :(得分:0)
假设您要求的是每个客户的最后输入行您可以使用这样的句子:
SELECT activityid, clientid, subject, body, datemodified
FROM Activity as ac
WHERE datemodified=(
SELECT max(datemodified)
FROM Activity
WHERE cleintid=ac.clientid
)