Sql server 2008 具有其他条件的最大(日期)查询
我的记录:Sql server 2008 具有其他条件的最大(日期)查询,sql-server-2008,Sql Server 2008,我的记录: SF_ID CardID Status Received_Date Meetup_Date 12 1 Yes 2015-01-12 2015-12-03 13 1 No 2015-12-01 NULL 14 1 No 2015-12-01 NULL 15 2 No 2015-12-02 NULL 16 2 No
SF_ID CardID Status Received_Date Meetup_Date
12 1 Yes 2015-01-12 2015-12-03
13 1 No 2015-12-01 NULL
14 1 No 2015-12-01 NULL
15 2 No 2015-12-02 NULL
16 2 No 2015-12-02 NULL
17 3 No 2015-12-01 NULL
18 4 No 2015-12-06 NULL
19 5 Yes 2015-11-30 2015-12-01
20 5 No 2015-11-30 NULL
22 5 No 2015-11-30 NULL
23 7 yes 2015-12-06 2015-12-07
要求#1:
所有cardID
其中接收日期
为最小值,且状态
是No
和Top 01 SF\u ID
。我用以下方法尝试过,但没有成功:
SELECT CardSFID,
CardID,
CardSFShortDate
FROM CC_Shortfall AS [data]
WHERE ( CardSFShortDate = (SELECT TOP 1 PERCENT CardSFShortDate
FROM CC_Shortfall
WHERE CardID = [data].CardID) )
AND CardSFYesNo = 'No'
要求#2:
所有cardID
其中MeetUp_Date
为最大值,状态
是Yes
并且carid下没有任何No状态
我试着用以下方法做,但没有成功:
SELECT CardSFID,
CardID,
CardSfShortRcvDate
FROM CC_Shortfall AS [data]
WHERE ( CardSfShortRcvDate = (SELECT Max(CardSfShortRcvDate)
FROM CC_Shortfall
WHERE CardID = [data].CardID) )
AND CardSFYesNo = 'Yes'
我试图创建一个环境来进行测试并提出解决方案,但数据和查询之间似乎存在一些差异。在您提供的数据中找不到CardsShortRCVDate。。。请更正。“收到日期最少且状态为“无”且前01个SF\U ID的所有卡片”很难理解。。。请将您希望看到的作为结果