问一个SQL语句怎么写。大哥请帮忙。

zhehui 2003-08-20 10:47:29
就是一个Product表,一个Allprice表.
Product表中的第一个产品有唯一的产品代号(Productdh).
Allprice中的Productdh相同有很多个,在对应的价格(thprice)不一样。
还有一个问题就是Product表中有image字段和text类型的字段。
我要想的结果就是在Product表中一一对应allprice的最低的价格(要显示所有的字段)。
比如Product表中有字段:
Productdh 产品代号(唯一的)
text 产品简介
Pic 产品图片。
在Allprice表中有字段。
Productdh 产品代号
thprice 不同代理商的价格。

我要想的结果就是在Product表中一一对应allprice的最低的价格(要显示所有的字段)。
...全文
26 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
baozs 2003-08-21
  • 打赏
  • 举报
回复
不用这么麻烦,可以这样:
select P.Productdh, P.text, min(A.thprice) from Product P
left join Allprice A on
A.Productdh = P.Productdh
group by P.Productdh, P.text
mysummer2003 2003-08-21
  • 打赏
  • 举报
回复
写错,改正
select a.productdh,b.minprice from a,
(select productdh,min(thprice) as minprice from allprcie group by productdh)b
where a.productdh=b.productdh
mysummer2003 2003-08-21
  • 打赏
  • 举报
回复
select a.productdh,b.minprice from a,
(select productdh,min(thprice) as minprice from allprcie )b
where a.productdh=b.productdh
skyyiyang 2003-08-21
  • 打赏
  • 举报
回复
select p.*,a.thprice from product p
left join (
select productdh, min(thprice) from allprice group by productdh
) a. on p.productdh=a.productdh

wjowner 2003-08-20
  • 打赏
  • 举报
回复
如果AllPrice表中只有上面的两个字段,而且Product表中的字段不多,那么这段代码可以改写成效率高一点的,不用嵌套语句(直接使用Group By子句聚合Product表中的所有字段)
wjowner 2003-08-20
  • 打赏
  • 举报
回复
Select P.*, A.* From Product P Inner Join AllPrice A On P.Productdh=A.Productdh Where A.thprice In (Select Min(thprice) From AllPrice B Where B.Productdh=A.Productdh Group By B.Productdh)

22,207

社区成员

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

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