数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块:

SELECT 
FROM 
WHERE
-- 创建数据库
create database if not exists stu;
-- 使用数据库
use stu;
-- 创建一个表
create table student(
    sid int primary key auto_increment,
    sname varchar(20) not null,
    sex varchar(10)
)charset=utf8;
-- 插入数据
insert into student values(0,'张三','男'),(0,'李四','男'),(0,'王五','男'),(0,'刘备','男'),(0,'貂蝉','女'),(0,'诸葛亮','男');

下面的操作都是基于这个student表进行的。

全字段查询
-- srcect * from 表名;
-- * 表示全部
select * from student;

结果如下:

MySQL之数据查询语言(DQL)_MySQL

指定字段查询
-- select 列名 from 表名;
select sname from student;
select sname, sex from student;

结果如下:

MySQL之数据查询语言(DQL)_MySQL_02

消除重复行
-- select distinct 列1,列2,... from 表名;
select distinct sex from student;
select distinct sname,sex from student;

结果如下:

MySQL之数据查询语言(DQL)_MySQL_03

注意:

  • 在 select 后面、列前面,使用 distinct 可以消除重复的行。
  • 对于一个字段,“重复行”指的是每一行中相同的行。
  • 对于多个字段,“重复行”指的是所有字段完全一样的行
简单的条件查询
-- select 列名 from 表名 where 查询条件;
-- 查询sex为女的人
select sname from student where sex='女';

结果如下:

MySQL之数据查询语言(DQL)_MySQL_04