select top 2 * from 你地表 order by date desc,newid()
select top 2 * from A order by [date] desc
select top 2 * from 表 order by 时间 desc
你的表里面应该有一个 表示日期的 字段吧?比如为date 则 select top 2 * from A where Cast(date as varchar(10)) = Cast(getdate() as varchar(10)) or Cast(date as varchar(10)) = Cast(DATEADD(day,-1,getdate()) as varchar(10))order by date desc
select top 2 * from 表 order by 时间 desc
select top 2 * from 表 order by Date desc
参考数据如下 id name date 1 AA 2009-01-22 2 A1 2009-01-21 3 A2 2009-01-14 4 A3 2009-01-14 5 A4 2009-01-22 6 A5 2009-01-22 7 A6 2009-01-21 8 A7 2009-01-21 我想要的结果是在'2009-01-22'这天中的3条记录中随机抽取2条出来!假如'2009-01-22'这天没有数据,那叫到它前一天找'2009-01-21'中的数据抽取2条,如果还没有那就继续找就找到'2009-01-14'中的数据
select top 2 * from A order by [date] desc
select top 2 * from tb order by 日期字段 desc
试试这个 select top 1 with ties * from tb order by convert(nvarchar(10),Date,120) desc
from 你地表
order by date desc,newid()
select top 2 * from A order by [date] desc
select top 2 *
from A
where
Cast(date as varchar(10)) = Cast(getdate() as varchar(10))
or Cast(date as varchar(10)) = Cast(DATEADD(day,-1,getdate()) as varchar(10))order by date desc
select top 2 * from 表 order by Date desc
id name date
1 AA 2009-01-22
2 A1 2009-01-21
3 A2 2009-01-14
4 A3 2009-01-14
5 A4 2009-01-22
6 A5 2009-01-22
7 A6 2009-01-21
8 A7 2009-01-21
我想要的结果是在'2009-01-22'这天中的3条记录中随机抽取2条出来!假如'2009-01-22'这天没有数据,那叫到它前一天找'2009-01-21'中的数据抽取2条,如果还没有那就继续找就找到'2009-01-14'中的数据
select top 2 * from tb order by 日期字段 desc
试试这个
select top 1 with ties * from tb order by convert(nvarchar(10),Date,120) desc