分组查询,每组产品取一条最大的记录!!

邦迪代驾 2006-08-02 02:57:19
porduct 表字段如下:
产品 价格 数量 总价格
aaa 5 8
bb 25 54
aaa 8 4
ccc 20 51
bb 74 41
aaa 54 87
.....
.....
每种产品分别取一条“总价格“最大的记录
...全文
395 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
tang0815 2006-08-03
  • 打赏
  • 举报
回复
select 产品,max(价格*数量) as 总价格
group by 产品
turenjie 2006-08-03
  • 打赏
  • 举报
回复
解决取了两条的问题:
id为table的主键
select * from table a where a.id in (select top 1 * from table where 产品=a.产品
order by 价格*数量 desc )
邦迪代驾 2006-08-03
  • 打赏
  • 举报
回复
libin_ftsafe(子陌红尘:当libin告别ftsafe)
___________________________________________
谢谢楼上的兄弟,可是我现在又出现问题了,就是一个表里,总价格有相同了,只想取一条,他帮我取了二条,我应该怎么办???谢谢
xyxfly 2006-08-02
  • 打赏
  • 举报
回复
:)
splory 2006-08-02
  • 打赏
  • 举报
回复
select 产品,价格,数量,max(总价格) from (select 产品,价格,数量,总价格=价格*数量 from porduct ) a group by 产品,价格,数量
sophiazero 2006-08-02
  • 打赏
  • 举报
回复
select * from 表 a
where 唯一标计 in
(
select 唯一标计 form 表 b
where a.数量*a.价格>b.数量*b.价格
)
嘘嘘兔 2006-08-02
  • 打赏
  • 举报
回复
Select a.产品,
max_price=max(a.tot_price)
from (select 产品,
tot_price=价格*数量
from porduct ) a
group by a.产品
LouisXIV 2006-08-02
  • 打赏
  • 举报
回复
select *
from tablename a
where 1>(select count(1) from tablename where a.产品=产品 and a.总价格<总价格)
子陌红尘 2006-08-02
  • 打赏
  • 举报
回复
select a.* from 表 a where not exists(select 1 from 表 where 产品=a.产品 and 价格*数量>a.价格*a.数量)
子陌红尘 2006-08-02
  • 打赏
  • 举报
回复
select a.* from 表 a where not exists(select 1 from 表 where 产品=a.产品 and 价格>a.价格)

34,575

社区成员

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

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