《MySQL入门学习》(p21~p23)

p21 DQL_基础查询


CREATE TABLE student (
id INT,  
NAME VARCHAR(20),
age INT,
sex VARCHAR(5),
address VARCHAR(100),
math INT,
english INT
);

SELECT * FROM student;

INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (1, '马云',55,'男','杭州',66,78);
INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (2, '马化腾',45,'男','深圳',98,87);
INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (3, '马景涛',45,'男','香港',56,77);
INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (4, '柳岩',20,'女','湖南',76,65);
INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (5, '柳青',21,'男','湖南',86,NULL);
INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (6, '刘德华',57,'男','香港',99,98);
INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (7, '马德',22,'男','杭州',61,66);
INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (8, '德玛西亚',27,'男','南京',81,55);

-- 查询 姓名 和 年龄
SELECT 
	NAME, -- 姓名
	age -- 年龄
FROM 	
	student; -- 学生表


SELECT address FROM student;

-- 去除重复的结果集
SELECT DISTINCT address FROM student;
SELECT DISTINCT NAME,address FROM student;


-- 计算math和english的总分之和
SELECT NAME, math,english,math+english FROM student;

SELECT NAME, math,english,math+	IFNULL(english,0) FROM student;

SELECT NAME, math,english,math+	IFNULL(english,0) 总分 FROM student;

SELECT NAME, math 数学,english 英语,math+IFNULL(english,0) 总分 FROM student;

p22 DQL_条件查询

-- 条件查询
SELECT * FROM student;

SELECT * FROM student WHERE age>20;

SELECT * FROM student WHERE age>=20;

SELECT * FROM student WHERE age=20;

SELECT * FROM student WHERE age!=20;
SELECT * FROM student WHERE age<>20;


-- 查询年龄大于等于20 ,小于等于30的

SELECT * FROM student WHERE age>=20 && age<=30;  -- 不推荐这种方式
SELECT * FROM student WHERE age>=20 AND age<=30;  -- 推荐这种方式
SELECT * FROM student WHERE age BETWEEN 20 AND 30;  -- 推荐这种方式

-- 查询年龄22,18,25岁的信息

SELECT * FROM student WHERE age = 22 OR age = 18 OR age = 25;
SELECT * FROM student WHERE age IN (22,18, 25);

-- 查询没有英语成绩的

SELECT * FROM student WHERE english = NULL; -- 不对的,null值不能使用=(!=)判断


SELECT * FROM student WHERE english IS NULL;

SELECT * FROM student WHERE english IS NOT NULL;

p23 DQL_模糊查询

-- 模糊查询

-- 查询姓马的有哪些? like
SELECT * FROM student WHERE NAME LIKE '马%';


-- 查询姓名第二个字是“化”的人
SELECT * FROM student WHERE NAME LIKE '_化%';

-- 查询姓名是3个字的人
SELECT * FROM student WHERE NAME LIKE '___';

-- 查询姓名中包含“德”字的人
SELECT * FROM student WHERE NAME LIKE '%德%';

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值