MySQL入门学习-查询进阶.DISTINCT

       在 MySQL 中,DISTINCT 关键字用于查询结果中去除重复的记录。

一、在查询进阶中,除了 DISTINCT 之外,还有以下关键字:

- GROUP BY:

根据指定的字段对结果进行分组,通常与聚合函数一起使用,例如 SUM、AVG、COUNT 等。

- HAVING:

在分组后过滤结果,只返回满足条件的分组。

- JOIN:

将多个表连接在一起,以获取更丰富的数据。包括 INNER JOIN、LEFT JOIN、RIGHT JOIN 等。

二、DISTINCT 关键字的特点是:

- 它只返回不同的值,去除了重复的记录。

- 它可以应用于查询的任何字段或表达式。

- 它通常用于需要获取唯一结果的查询。

三、使用 DISTINCT 关键字的方法如下:

SELECT DISTINCT column1, column2,...FROM table_name;

其中,column1、column2 等是要去除重复的字段列表,table_name 是要查询的表名。

四、与其他关键字的比较:

- GROUP BY 和 DISTINCT 都可以用于去除重复记录,但 GROUP BY 会按照指定的字段进行分组,而 DISTINCT 则直接去除所有重复记录。

- HAVING 与 WHERE 都可以用于过滤结果,但 HAVING 是在分组后进行过滤,而 WHERE 是在查询之前进行过滤。

- JOIN 用于连接多个表,可以实现更复杂的查询,但需要注意正确使用连接条件。

五、高级应用包括:

- 结合其他聚合函数使用,例如:

SELECT DISTINCT category, SUM(sales)FROM sales_tableGROUP BY category;

- 在多表查询中使用,例如:

SELECT DISTINCT table1.column1, table2.column2FROM table1JOIN table2 ON table1.id = table2.id;

以下是一个示例,演示了如何使用 DISTINCT 关键字:

-- 创建一个名为 students 的表,包含 id 和 name 两个字段CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50));-- 插入一些示例数据INSERT INTO students (id, name)VALUES (1, 'Alice'), (2, 'Bob'), (3, 'Charlie'), (4, 'Alice');-- 使用 DISTINCT 关键字查询去重后的学生名字SELECT DISTINCT nameFROM students;

       在上述示例中,使用 DISTINCT 关键字查询了去重后的学生名字,结果只会返回不同的名字。

(文章为作者在学习MySQL过程中的一些个人体会总结和借鉴,如有不当、错误的地方,请各位大佬批评指正,定当努力改正,如有侵权请联系作者删帖。)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/844051.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kexin2024年5月22日

在CLion上调试程序 使用程序的模板来调试程序 在下图中输入作为console窗口输入输入数据。 下面将程序记录一下 首先的是模板 //main.c /** * Description: * Caution:本地调试时,只编译运行这一个文件,不要链接solution.c!…

初学JavaScript

什么是JavaScrip: JavaScript 是一种高级编程语言,主要用于网页开发。它是一种动态、弱类型的语言,可以在客户端(浏览器)中运行,并与 HTML 和 CSS 一起用于创建交互式网页。JavaScript 可以添加动态功能&a…

vba 基本操作

1. 获取多有的sheets 并对sheet 循环处理 Dim sheets As sheets Dim sheet As Worksheet Dim name As String Set sheets ThisWorkbook.Worksheets For Each sheet In sheetsIf sheet.name <> "Sheet1" Thenname sheet.nameEnd If Next sheet2. 添加一个工…

电脑误删除的文件怎么恢复?6个方法图文详解!

“我在电脑上误删除了一些比较重要的文件&#xff0c;现在不知道应该怎么操作了&#xff0c;有没有可以分享一下经验的朋友呀&#xff1f;” 在数字化世界的浪潮中&#xff0c;电脑成为了我们处理、存储和分享信息的重要工具。然而&#xff0c;随着我们对电脑的依赖日益加深&am…

深入理解@TableField注解的使用-MybatisPlus教程

TableField注解是MyBatis-Plus框架提供的一个功能&#xff0c;用于指定实体类属性与数据库表列的映射关系。当实体类的属性名称和数据库表的列名称不一致&#xff0c;或者需要指定一些特殊的处理逻辑时&#xff0c;可以使用TableField注解。 以下是TableField注解的一些常见用…

cfa三级大神复习经验分享系列(二)

嫌文章太长&#xff0c;我给大家一个备考简略总结&#xff0c;看完可以关闭。资料&#xff1a;note真题&#xff08;三级不用&#xff09;基础/强化班 note看两遍例题动手做两遍&#xff0c; 真题动手做三遍 其他&#xff0c;没有了&#xff0c;做好这些 高分pass 一&#xff…

【云原生】kubernetes中Configmap原理解析与应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

236. 二叉树的最近公共祖先(C++)

文章目录 前言一、题目介绍二、解决方案三、优化总结 前言 在本篇文章中我们将会讲解二叉树中极为经典的题目236. 二叉树的最近公共祖先 一、题目介绍 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的…

如何借VR之手,让展厅互动更精彩?

VR虚拟现实技术以其卓越的沉浸式体验为特点&#xff0c;引领用户踏入一个全新的虚拟世界&#xff0c;正因如此&#xff0c;它开始被广泛应用于展厅、商业等多个领域。那么&#xff0c;今天&#xff0c;让我们就来了解一下这种技术是如何为展厅带来精彩互动体验的吧&#xff01;…

日常使用工具(截图,笔记,一键启动)

目录 一,截图 Snipaste 二.笔记 Joplin 三.翻译 四.自动启动软件 这篇记录一下工作中用的很顺手的工具. 一,截图 Snipaste 官网:Snipaste - 截图 贴图 下面是官方手册. 使用 我都是直接F1 就会出现选择框,随意拖动大小,选择下方工具栏,相应位置, 二.笔记 Joplin 官网:…

el-table表格实现鼠标拖动而左右滑动

场景描述&#xff1a; 表格样式较为复杂&#xff0c;10条数据超出整个屏幕的高度&#xff0c;因而导致无法快速拖动滚动条&#xff0c;所以提出需要在表格内容区拖动鼠标&#xff0c;从而实现无需滚动到底部就可以左右拖动表格内容的效果。 具体实现&#xff1a; 实现的方式…

上海云管平台怎么样?客服电话多少?

云计算已经成为了企业数字化转型的重要一部分&#xff0c;而在上海&#xff0c;云管平台发展更是大势所趋。这不不少小伙伴在问&#xff0c;上海云管平台怎么样&#xff1f;客服电话多少&#xff1f; 上海云管平台怎么样&#xff1f;客服电话多少&#xff1f; 【回答】&#…

[排序算法]4. 图解堆排序及其代码实现

先来看看什么是堆? 堆是一种图的树形结构&#xff0c;被用于实现“优先队列”&#xff08;priority queues&#xff09; 注:优先队列是一种数据结构&#xff0c;可以自由添加数据&#xff0c;但取出数据时要从最小值开始按顺序取出。 在堆的树形结构中&#xff0c…

vscode的使用 ubuntu入门之二十二

高亮标识符&#xff0c;变量或者函数可以用 rainbow-highlighter 这个插件 Press shiftaltz, and variables curser is on will be highlighted. Press the same command again to remove highlights. Press shiftalta to remove all highlights. 参考&#xff1a; 在VSCode…

【台阶问题】

目录 问题&#xff1a; 思路&#xff1a; 回溯-分支限界法 知识点 目标函数&#xff08;分支结束的情况&#xff09;: n0 约束函数&#xff08;截断不合理的分支&#xff09;: num < 2 、 i > n-i && num 0 限界函数&#xff08;阶段不最优的分支&#xf…

开发问题合集(待补充)

docker 学习文档 ollama 官网 streamlit 官方文档

通过伪造NPU设备,让AscendSpeed在没有安装torch_npu的环境中跑起来

通过伪造NPU设备,让AscendSpeed在没有安装torch_npu的环境中跑起来 代码输出 背景: 我想在GPU上运行AscendSpeed框架,因为没有torch_npu、deepspeed_npu,又不想一个个注释掉 方法: 1.本文本通过创建一个FakeDevice 类来伪造 NPU&#xff08;Neural Processing Unit&#xff0…

C语言动态内存分配

有些情况下需要开辟的空间大小在程序运行过程中才能确定下来&#xff0c;而常规的在栈区开辟空间是在编译时就分配好了内存&#xff0c;并且内存大小不能改变&#xff0c;因此需要引入动态内存分配&#xff0c;动态内存分配的内存是在堆区&#xff0c;需要由用户手动开辟&#…

共享内存的分享

共享内存是一种进程间通信&#xff08;IPC&#xff0c;Inter-Process Communication&#xff09;的机制&#xff0c;用于在不同进程之间共享数据。它允许多个进程访问同一个内存段&#xff0c;从而使数据传递更加高效。共享内存的主要作用包括&#xff1a; 1. 高效数据交换 共…

java: 警告: 源发行版 8 需要目标发行版 8

前言 该文章中项目背景是&#xff1a;IDEA与设置的版本与实际电脑配置的不一致。也就是说只改了这个团队项目的JDK版本&#xff0c;IDEA上其它项目JDK版本未更改。 提示&#xff1a; IDEA警告&#xff1a;javaX&#xff1a;警告&#xff1a;源发行版 需要目标发行版 简略步…