SQL学习之select distinct语句

参考源

    简单教程 菜鸟教程

SQL select distinct 语句

SQL select distinct 语句用于返回唯一的不同的记录

一个列可能会包含多个重复值,有时您也许希望仅仅列出不同 ( distinct ) 的值

distinct 关键词*用于返回唯一不同的值

select distinct column_name, column_name from table_name;

示例数据

CREATE DATABASE IF NOT EXISTS hardy_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;

USE hardy_db;

DROP TABLE IF EXISTS lesson;

CREATE TABLE lesson (
	id INT ( 11 ) NOT NULL PRIMARY KEY AUTO_INCREMENT,
	NAME VARCHAR ( 32 ) DEFAULT ,
	views INT ( 11 ) NOT NULL DEFAULT 0,
	created_at TIMESTAMP 
);

INSERT INTO lesson ( id, name, views, created_at )
VALUES
	( 1, Python3 基础教程, 981, 2019-03-18 13:52:03 ),
	( 2, JavaScript 基础教程, 73, 2019-03-18 16:03:32 ),
	( 3, Ruby 基础教程, 199, 2019-04-01 06:16:14 ),
	( 4, SQL 基础教程, 533, 2019-05-02 08:13:42 ),
	( 5, Python3 基础教程, 1000, 2019-06-02 08:13:42 );

基本使用

下面的 SQL 语句仅从 “lesson” 表的 “name” 列中选取唯一不同的值,也就是去掉 “name” 列重复值

select distinct name from lesson;

运行以上 SQL 语句,输出结果如下:

mysql> select distinct name from lesson;
+---------------------+
| name                |
+---------------------+
| Python3 基础教程     |
| JavaScript 基础教程  |
| Ruby 基础教程        |
| SQL 基础教程         |
+---------------------+
经验分享 程序员 微信小程序 职场和发展