作者jayzhuang (Jay)
看板Database
标题[SQL ]合并查询SQL语法的问题
时间Sun Oct 24 21:11:29 2021
(针对
SQL 语言的问题,用这个标题。请用 Ctrl+Y 砍掉这行)
资料库名称:MSSQL
资料库版本:
内容/问题描述:
各位大大好,在下是在解题的时候第一次遇到这种类似模糊查询的问题,
(两个关键栏位不是完全一样)
两个资料表如下:
https://imgur.com/pV5h6j8
我预设一开始写的方式inner join之後去修改,
在on的条件下使用like(模糊查询),但还是错:
select count(钢卷基本资料.厚度) as 数量, SUM(钢卷基本资料.净重) as 总重量
,钢卷来源厂商.来源名称,钢卷来源厂商.厂商代码
from 钢卷基本资料 inner join 钢卷来源厂商
on 钢卷来源厂商.厂商代码 like '%'+ 钢卷基本资料.钢号 +'%'
结果:
https://imgur.com/S8jTwZw
有看着基本资料表的时候,注意到它厚度的规则,
修改SQL语法後如下:
select 钢卷基本资料.厚度 , count(钢卷基本资料.厚度) as 数量,Sum(钢卷基本资料.净重) as 总重量 from 钢卷基本资料
group by 钢卷基本资料.厚度
结果:
https://imgur.com/Z5QWPsR
但这样还是不对,得要合并厂商资料表才算对......
有人可以教我是少了哪个步骤吗?
//-------------(更新)
抱歉我解出来了,group by的问题,因为他不是只有一个栏位资料会相同。
https://imgur.com/1XCnDRx
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.239.110.119 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1635081092.A.EFB.html
※ 编辑: jayzhuang (36.239.110.119 台湾), 10/24/2021 21:26:02
1F:推 lin1000: on 後面的like 左右交换 10/30 12:45
2F:推 ken218: 我觉得 Join 用 left(钢号,2) = 厂商代码 比较直接 11/08 16:11
3F:推 ken218: *直觉 11/08 17:09