0
点赞
收藏
分享

微信扫一扫

MySQL中的distinct 用法

你的益达233 2022-02-21 阅读 59


前言

前段时间有点小忙,这个月的博客好像还没写过,上班不易!这两天还好,有点时间看了看leetcode的有关数据库的题,数据库语句也就是常用的还比较熟悉,不用就全都给忘了,所以这篇文章也是给自己提个醒,基础要经常去回顾的。

正文

DISTINCT 用于去重信息,我好像写过一两次的去重,但是没想起来这个关键字,工作中也没什么相关的业务。具体怎么用呢?通过例子来看看吧!

随便建了一个库

MySQL中的distinct 用法_sql

建库语句如下:

CREATE TABLE `test_distinct`  (
`id` int(11) NOT NULL,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`sex` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;

INSERT INTO `test_distinct` VALUES (1, 'a', '1');
INSERT INTO `test_distinct` VALUES (2, 'b', '0');
INSERT INTO `test_distinct` VALUES (3, 'a', '0');
INSERT INTO `test_distinct` VALUES (4, 'b', '1');
INSERT INTO `test_distinct` VALUES (5, 'c', '1');

一、按名字来查询数据库

select name from test_distinct

显示结果

MySQL中的distinct 用法_字段_02

结果中有重复的姓名怎么去重呢?就用到了关键字DISTINCT

二、使用DISTINCT 关键字按名字来查询数据库

select distinct name from test_distinct

显示结果:

MySQL中的distinct 用法_数据库_03

达到了去重的目的

三、查询两个字段的去重

我把数据库中的数据做了一个简单的更改,其中有两条数据的名字跟性别是相同的。

MySQL中的distinct 用法_sql_04

查询一下数据库中的数据

select name, sex from test_distinct

查询出了有重复的数据

MySQL中的distinct 用法_字段_05

四、使用关键字去重

去重的查询语句

SELECT distinct name, sex from test_distinct

查询结果:

MySQL中的distinct 用法_mysql_06

比较两次查询结果可以得出:

DISTINCT 关键字是去重的,如果查询的是单个字段的就是去掉单个字段中重复的数据,如果查询的是多个字段,那么去重的是多个字段中完全相同的数据。

就如上图中的结果,去重前有两个name:b sex:0 。去重后就留下了一个name:b sex:0

结束

我这更新博客的时间真的是不确定,有时间了就写一篇,工作忙起来了就顾不上写博客了。反正还是要持续不断的学习的,就跟某软件上说的“学习是一种信仰”,不过最近可能会再回头学学MySQL的相关基础。



举报

相关推荐

0 条评论