Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >无法在SQL联接上显示联接键

无法在SQL联接上显示联接键
EN

Stack Overflow用户
提问于 2021-02-23 09:44:20
回答 1查看 23关注 0票数 1

我有两个标准的表-我想要显示最畅销的产品(按销售)在每个组

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Product_Info_Table -> 
Product_Id, Product_Group, Product_Name
P1  BOOK    3 Musketeers
P10 SHOES   NIKE Fly
P11 SHOES   NIKE Thunder
P12 SHOES   ADIDAS 10
P13 SHOES   ADIDAS 09
P14 BOOK    Harry Potter 1
P15 BOOK    Harry Potter 2
P2  BOOK    HARRY POTTER 7
P3  ELECTRONICS NIKON 5600i
P4  ELECTRONICS CANNON 4d
P5  ELECTRONICS CANNON 5d
P6  VIDEO DVD   LOR 1
P7  VIDEO DVD   LOR 2
P8  VIDEO DVD   HP 1
P9  VIDEO DVD   HP 2

和Product_Sales_Table

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Product_ID SALES_AMT
P1  10
P10 8
P11 45
P2  5
P3  5
P4  25
P5  15
P6  35
P7  5
P8  100
P9  30

我做了以下工作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT product_info_table.PRODUCT_GROUP, 
product_info_table.PRODUCT_ID,
MAX(IFNULL(sales_fact_table.SALES_AMT,0))

FROM product_info_table
INNER JOIN product_sales_table 
ON product_sales_table.PRODUCT_ID = product_info_table.PRODUCT_ID

GROUP BY product_info_table.PRODUCT_GROUP

结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Product_Group Id    Max_Sales
BOOK          P1    10
SHOES         P10   45
ELECTRONICS   P3    25
VIDEO DVD     P6    100

错误:奇怪的是,这个结果正确地识别了每个类别中的最大销售产品,但是,Product_Id没有正确显示,默认情况下,每个类别中的第一个product_id会被挑选出来。

为了显示正确的product_id,我做错了什么?

Desired_Result

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Product_Group Id    Max_Sales
BOOK          P1    10
SHOES         P11   45
ELECTRONICS   P4    25
VIDEO DVD     P8    100
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-23 12:31:51

使用窗口函数而不是聚合:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT p.*
FROM (SELECT pit.PRODUCT_GROUP, pit.PRODUCT_ID, pst.SALES_AMT,
             ROW_NUMBER() OVER (PARTITION BY pit.PRODUCT_GROUP ORDER BY pst.SALES_AMT DESC) as seqnum
      FROM product_info_table pit JOIN
           product_sales_table pst
           ON pst.PRODUCT_ID = pit.PRODUCT_ID
     ) p
WHERE seqnum = 1;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66330675

复制
相关文章
SQL语句汇总(终篇)—— 表联接与联接查询
既然是最后一篇那就不能只列出些干枯的标准语句,更何况表联接也是SQL中较难的部分,所以此次搭配题目来详细阐述表联接。
_DIY
2020/05/29
1.4K0
SQL语句汇总(终篇)—— 表联接与联接查询
编写 SQL 的排除联接
有两个表,就叫源表和目标表吧。它们有一个相同的字段,通过该字段可以把源表和目标表关联在一起,我们希望从源表中检索到的记录里的关联字段的值没有存在目标表中。举个例子,源表 dept,目标表 emp,获取 dept 表中部门编号不在 emp 表中的记录。在检查两张表的数据后,我们发现 emp 表中没有部门编号 40 的数据。
白日梦想家
2020/07/20
1.2K0
编写 SQL 的排除联接
SQL隐式联接(箭头语法)
InterSystems SQL提供了一个特殊的–>运算符,作为从相关表中获取值的快捷方式,而在某些常见情况下无需指定显式的JOIN即可。可以使用此箭头语法代替显式联接语法,也可以将其与显式联接语法结合使用。箭头语法执行左外部联接。
用户7741497
2022/06/06
8090
【T-SQL基础】02.联接查询
概述: 本系列【T-SQL基础】主要是针对T-SQL基础的总结。 本篇主要是对多表查询基础的总结。 查询语句的FROM字句在逻辑上是第一条要处理的字句,在FROM字句内可以用表运算符对输入的表进行操作
悟空聊架构
2018/05/18
3K0
芒果tv在miniblink无法显示的bug分析
http://www.mgtv.com/pcclient/tv/里用了window.external,
龙泉寺扫地僧
2019/02/20
9150
接上篇
安装自动补全插件 git clone git://github.com/zsh-users/zsh-autosuggestions$ZSH_CUSTOM/plugins/zsh-autosuggestions 运行以下命令更改配置 sudo nano ~/.zshrc 添加 plugins=(zsh-autosuggestions git) 使配置立即生效 source ~/.zshrc 安装语法高亮插件 运行以下命令 git clone https://github.com/zsh-users/zsh-s
云深无际
2021/04/14
4850
cmder 无法显示中文
cmder 默认是不支持中文字符的,可以在 Setting > Startup > Environment 下增加一行语言设置:
zucchiniy
2020/05/22
2.6K0
GitHub无法显示图片
修改Host文件,添加 # GitHub Start 140.82.113.3 github.com 140.82.114.20 gist.github.com 151.101.184.133 assets-cdn.github.com 151.101.184.133 raw.githubusercontent.com 151.101.184.133 gist.githubusercontent.com 151.101.184.133 cloud.githu
SingYi
2022/07/14
1.5K0
GitHub无法显示图片
Linux Tab键无法补全
今天在使用Linux的时候,突然发现Tab键无法补全,没有修改过文件,也没有安装过新软件。在网上查了很多方法都无法解决。最后发现根目录下的tmp目录已满,使用率达到100%。删除了tmp下的部分内容后发现Tab又可以正常使用。 如果碰到Tab键无缘无故不能补全的情况可以通过df -h命令查看tmp目录的使用率是否达到了100%。如果是的话,可以清理一些内容,再尝试进行补全操作。如果还不可以,请自行百度其他解决办法!
skyyws
2022/05/20
4.9K0
sql学习笔记(三)—— 联表查询
既然是联表查询,那肯定得多个表啊,所以,我们先创建一个教师表,表名为 teacher,并且向表中插入数据。
CherishTheYouth
2019/09/11
1.1K0
sql学习笔记(三)—— 联表查询
SQL学习之高级联结(自联结、自然联结、外联接)
create table Customers( Id int identity(1000000,1), Company varchar(30) null, Name varchar(20) null ) insert into Customers values('Fun4All','Tom') insert into Customers values('Alibaba','Tim') insert into Customers values('BaiDu','Jerry') insert into Cust
郑小超.
2018/01/24
1.6K0
SQL学习之高级联结(自联结、自然联结、外联接)
“□” 表情无法在 Android 设备显示? 快试试 EmojiCompact 表情兼容库
有了支持库 v26 下的 Compact 库,基于 API 19 及更高版本开发的应用就能获得 emoji 的向下兼容,再也不会看到显示失败的 “豆腐块” 啦。如要使用 EmojiCompact,需要在应用启动时通过下载或者打包字体来初始化库。通过集成小插件,或者经由已有的辅助类升级自定义视图,来添加 TextViews 中的 emoji 支持。 更多请观看我们的视频介绍↓↓↓ v.qq.com/x/page/n056…
Android 开发者
2018/05/31
7360
[Flask]Python 跑flask 无法在命令行有任何信息显示
也没有,那么,很可能的原因就是,你把信息输出重定向到了/dev/null 我造成的代码是以下代码,你可以顺着这个思路找一下原因。
用户2353021
2020/05/11
1.2K0
出现“内部错误,无法显示”
This page contains the following errors: error on line 2 at column 6: XML declaration allowed only at the start of the document Below is a rendering of the page up to the first error. 提示信息是头部有错误,我登录后台查看我修改过的页面,然后找到home.php我看了十几分钟没有发现那里有错误~~ 莫非头部不能有空格? 去掉试试
苦咖啡
2018/05/07
3.2K0
jira无法正常显示图片
jira安装之后,图片在富文本编辑器内能正常显示,但是在附件内无法显示,如果查看会发现图片的连接是127.0.0.1.
obaby
2023/02/23
2.5K0
jira无法正常显示图片
承接上文
前置通知[Before advice]:在连接点前面执行,前置通知不会影响连接点的执行,除非此处抛出异常。 
小勇DW3
2018/08/30
6290
承接上文
Mybatis显示SQL语句
众所周知,hibernate可以通过配置show_sql在控制台显示sql语句,Mybatis可不可以呢?当然是可以的,将ibatis log4j运行级别调到DEBUG可以在控制台打印出ibatis运行的sql语句,方便调试:
河岸飞流
2019/08/09
2K0
SQL的几种连接:内连接、左联接、右连接、全连接、交叉连接
SQL连接可以分为内连接、外连接、交叉连接。 数据库数据: book表 stu表 1.内连接 1.1.等值连接:在连接
小小科
2018/05/02
3.3K0
SQL的几种连接:内连接、左联接、右连接、全连接、交叉连接
物联网 | 联通加入ZETA联盟,加强“大联接”能力锻造万物智联“数字底座”
近日,中国联通旗下全资子公司联通(上海)产业互联网有限公司正式加入ZETA联盟,成为ZETA联盟成员及合作伙伴。目前,国内三大运营商均已加入ZETA联盟,将广泛凝聚起产业创新力量,进一步推动物联生态建设与落地应用。
ZETA开发者
2022/12/13
1.3K0
物联网 | 联通加入ZETA联盟,加强“大联接”能力锻造万物智联“数字底座”
Wireshark 在MacOS10.15.3 系统无法显示网卡的解决方法
en0网卡呢?去了stackoverflow和软件的官网都没法真的找到解决办法,总的来说就要我修改 /dev/bpf* 的权限来解决这个问题。
爱因斯坦福
2020/03/20
7580

相似问题

在联接上使用键

12

在SQL联接上引入MAX

11

使用sql在联接上插入数据

20

在左联接上使用SQL索引

31

多个联接上的SQL左联接错误

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文