问一个查询,我只有十分了,请帮忙

stevegates 2003-08-25 12:42:05
有一个表有若干字段,其中一个字段topic有ST,SL,CM三个值,另一个date字段。
我希望得到每个topic相同的纪录中date最大的前三条(一共九条),怎么写?

谢谢。
...全文
30 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
stevegates 2003-08-25
  • 打赏
  • 举报
回复
CREATE PROCEDURE GetSMSSTop3
/*
(
@parameter1 datatype = default value,
@parameter2 datatype OUTPUT
)
*/
AS
SELECT TOP 3 * FROM SMSS WHERE Topic = 'ST' ORDER BY CODate DESC
UNION
SELECT TOP 3 * FROM SMSS WHERE Topic = 'SL' ORDER BY CODate DESC
UNION
SELECT TOP 3 * FROM SMSS WHERE Topic = 'CM' ORDER BY CODate DESC
/* SET NOCOUNT ON */
RETURN
不行啊,为什么?
stevegates 2003-08-25
  • 打赏
  • 举报
回复
知道了,谢谢。
ben988211 2003-08-25
  • 打赏
  • 举报
回复
select top 3 topic,date from table where topic = 'ST' order by date DESC
UNION
select top 3 topic,date from table where topic = 'SL' order by date DESC
UNION
select top 3 topic,date from table where topic = 'CM' order by date DESC

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧