看表(如TRClient)
| 身份证 | 客户ID | 标识 | 开始日期 | 结束日期 | |----|---------|-----|--------------|------------ --| | 1 | 10 | 1 | '2011-06-01' | '2012-05-31' | | 2 | 25 | 3 | '2011-06-01' | '2012-05-31' | | 3 | 10 | 1 | '2012-06-01' | '2013-05-31' |
我想要clientid
其enddate
不大于或等于它之前的记录
(两条记录之间的关系可以通过 确定)。enddate
sId
我进行了以下查询:(
这里我对 TRClient 中的每个客户端 ID 使用循环)
Select clientid from TRClient where clientId = 10 and sId = 1 and not (endDate >= '2012-05-31')
我想检查每个客户的最高 id 记录(如果 clientid 和 sId 相同,那么它应该只检查一个 id 更大的记录。例如,如果我们正在谈论,在给定的表中clientid = 10
,sid = 1
我们将得到两行(id = 1 and id = 3)
。在这里我想检查enddate >= '2012-05-31' for id = 3)