请教前辈关于重复数据筛选语句的问题?

lff88 2006-09-12 02:30:50
下面sql语句正常
SELECT 名称,max(日期) as 日期,count(*) as 重复次数
FROM dbo.表
WHERE (方式 like '%p1%') and (日期 >='p2') and(日期 <='p3') group by 名称
但我想再增加“方式”列名如下
SELECT 名称,方式,max(日期) as 日期,count(*) as 重复次数
FROM dbo.表
WHERE (方式 like '%p1%') and (日期 >='p2') and(日期 <='p3') group by 名称
但报错:“方式”在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句中。
请教前辈我应该如何改?谢谢!!
...全文
173 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lff88 2006-09-12
  • 打赏
  • 举报
回复
WangZWang(先来)
谢谢!好了
WangZWang 2006-09-12
  • 打赏
  • 举报
回复
--由于同名的方式有很多种,你要取哪一种? 如下取其中一种

SELECT 名称,方式=max(方式),max(日期) as 日期,count(*) as 重复次数
FROM dbo.表
WHERE (方式 like '%p1%') and (日期 >='p2') and(日期 <='p3') group by 名称
lff88 2006-09-12
  • 打赏
  • 举报
回复
不好意思漏字。
WangZWang(先来):
按你的方法与我原语句结果不同!

lff88 2006-09-12
  • 打赏
  • 举报
回复
WangZWang(先来):
谢谢你!!
group by 名称,方式
不能用此方法,否则话结全变了!另外p1,p2,p3是变量
WangZWang 2006-09-12
  • 打赏
  • 举报
回复
SELECT 名称,方式,max(日期) as 日期,count(*) as 重复次数
FROM dbo.表
WHERE (方式 like '%p1%') and (日期 >='p2') and(日期 <='p3')
group by 名称,方式

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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