使用JOIN查询数据重复,怎么办?使用count统计怎么写SQL?

这篇具有很好参考价值的文章主要介绍了使用JOIN查询数据重复,怎么办?使用count统计怎么写SQL?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

举例

比如现在有两个表tbl_a和tbl_b,如下:
tbl_a

id name
1 Bruce
2 Mike
3 Angela
tbl_b
id a_id
:-: :-:
1 1
2 1
3 2
4 3
5 3
6 3
这时候我们如果联查的话,就会出现重复数据:
select a.id, a.name from tbl_a a 
join tbl_b b on a.id = b.a_id
where

这样查出来的数据就会像下面这样:

id name
1 Bruce
1 Bruce
2 Mike
3 Angela
3 Angela
3 Angela

解决

去重的方法有三种:

一、distinct

select distinct a.id, a.name from tbl_a a 
join tbl_b b on a.id = b.a_id
where

二、group by

select a.id, a.name from tbl_a a 
join tbl_b b on a.id = b.a_id
wheregroup by a.id

三、子查询

select a.id, a.name from tbl_a a 
where a.id = (select a_id from tbl_b where a_id = a.id)

count怎么办?

如果要用count统计数据,直接按最开始的写法也会统计多出来,而且此时distinct和group by也不好用了。
distinct直接没效果,group by则变成了按tbl_a的id分别统计个数。
这时候就只能用子查询来解决问题了。文章来源地址https://www.toymoban.com/news/detail-601813.html

到了这里,关于使用JOIN查询数据重复,怎么办?使用count统计怎么写SQL?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SQL联表查询LEFT JOIN 数据去重复

    使用left join联表查询时,如果table1中的一条记录对应了table2的多条记录,则会重复查出id相同的多条记录。 解决方法: 将查询结果作为中间表,使用group by 进行去重 如果想对group by后的数据计算count,可以将查询结果作为中间表再计算count

    2024年02月11日
    浏览(33)
  • MySQL主从数据不一致,怎么办?

    先给大家说个身边的故事。 小伙伴二狗最近面宇宙厂,前面被问MySQL索引、锁、主从复制原理时答的都很开心。 当 面试官 问到 :“你们遇到主从不一致的问题怎么解决呢?你有什么更好的方案吗?” 二狗 懵了。不就是读写时候走主,纯读走从吗。。难道还有什么别的办法

    2023年04月20日
    浏览(38)
  • 电脑提示数据错误循环冗余检查怎么办?

    有些时候,我们尝试在磁盘上创建分区或清理硬盘时,还可能会遇到这个问题:数据错误循环冗余检查。这是如何导致的呢?我们又该如何解决这个问题呢?下面我们就来了解一下。 数据错误循环冗余检查怎么解决呢?在回答这个问题之前我们需要先了解一下导致问题的原因

    2024年02月12日
    浏览(45)
  • MySQL数据被误删怎么办?

    很多年前,被公司外派到一家单位驻场开发一个OA项目,两个开发对接各部门的需求,需求还要及时生效(一边开发一边使用)。有一次生产环境的一个bug本地没办法复现,由于没有测试人员,也就不存在测试环境,所以本地连了生产库去调试。不出意外的话要出意外了:在

    2024年02月01日
    浏览(31)
  • 领导临时要数据库文档怎么办?

    很多时候,我们为了着急忙慌赶项目进度,很容易忽略整理文档这件事 某一天,领导心血来潮,要搞一次突击检查, 想看看我们的数据库设计的是否规范, 但他又不想亲自去数据库查验(毕竟这么大领导) 那么,我们该怎么办? 第一种方法:离职,世界那么大,我想去看

    2024年02月08日
    浏览(28)
  • 数据库同步 Elasticsearch 后数据不一致,怎么办?

    Q1:Logstash 同步 postgreSQL 到 Elasticsearch 数据不一致。 在使用 Logstash 从 pg 库中将一张表导入到 ES 中时,发现 ES 中的数据量和 PG 库中的这张表的数据量存在较大差距。如何快速比对哪些数据没有插入?导入过程中,Logstash 日志没有异常。PG 中这张表有 7600W。 Q2:mq 异步双写数

    2024年02月15日
    浏览(30)
  • 服务器数据被盗了该怎么办

    随着互联网的发展,如今人们习惯了在互联网上分享生活、购物等等。便捷了人们的生活,也让互联网企业蓬勃生机,但同时也暗藏着危机。其中服务器被入侵是常见的黑客攻击方式,不仅会给企业带来经济损失,同时也让企业在公众面前失去了信誉。下面我们来看看一些案

    2024年02月04日
    浏览(48)
  • app渗透测试抓不到数据包怎么办?

    1、app渗透测试常见的模拟器有夜神,闪电模拟器等。 2、遇到问题,数据包抓不到? (1)最常见的解决方法调低模拟器安卓版本,使用MuMu模拟器,大部分app都适用,但是也有些app无法抓取。 (2)安装证书到系统根证书,可以解决上面的问题(一般情况下手机在安装了BurpSuite的伪证

    2024年02月13日
    浏览(27)
  • 数据分析过程中,发现数值缺失,怎么办?

    按照数据缺失机制,数据分析过程中,我们可以将其分为以下几类: (1)完全随机缺失(MCAR):所缺失的数据发生的概率既与已观察到的数据无关,也与未观察到的数据无关。 (2)随机缺失(MAR):假设缺失数据发生的概率与所观察到的变量是有关的,而与未观察到的数

    2024年02月05日
    浏览(41)
  • mysql数据库忘记密码了怎么办

    本人用的mysql8版本 看到网上很多教程,什么修改配置文件my.ini。在8版本根本没用。以下是8版本解决办法。亲测可用。 1、用管理员身份打开命令行工具。(强调:管理员身份) 2、停止mysql服务: 3、输入以下命令无密码启动mysql 4、 另开一个命令行窗口,输入mysql -u root无密

    2024年02月11日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包