2.2 查询数据

准备工作:创建两个数据表。

CREATE TABLE students(
    id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    class_id int NOT NULL,
    name varchar(20) NOT NULL,
    gender varchar(1) NOT NULL DEFAULT 'M' COMMENT '性别:M-男性;F-女性',
    score int NOT NULL
);
INSERT INTO students(class_id,name,gender,score) VALUES (1,"小明",'M',90),
    (1,"小红",'F',95),(1,"小军",'M',88),(1,"小米",'F',73),(2,"小白",'F',81),
    (2,"小兵",'M',55),(2,"小林",'M',85),(3,"小新",'F',91),(3,"小王",'M',89),
    (3,"小丽",'F',88);
CREATE TABLE classes(
    id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    name varchar(20) NOT NULL
);
INSERT INTO classes(name) VALUES ('一班'),('二班'),('三班'),('四班');

SELECT

使用SELECT * FROM <表名>可以查询一张表中的所有记录。

WHERE

使用where语句可以按照条件查询.

AND

使用and条件。

OR

使用or条件。

NOT

使用not条件。

IN

复合条件

投影查询

获取指定列。

OEDER BY

使用oder by对结果进行排序,默认从低到高,使用desc从高到低。

LIMIT OFFSET

当记录非常多的时候,只显示一部分结果,使用limit <m> offset <n>,从n开始,最多取m条数据。PS. MySQL的记录从0开始。

COUNT/SUM/MAX/MIN

GROUP BY

多表查询

UNION

JOIN

inner join内连接

外连接

join小结

join小结

Last updated

Was this helpful?