MySQL基础语法(四)(模糊查询、连接查询)

模糊查询

模糊查询需要掌握两个操作符%和_

%匹配任意多个字符,
_匹配任意单个字符

模糊查询使用like关键字进行匹配
模糊查询mysql做了优化可以忽略大小写,但是一般情如果多数据库开发环境下不推荐直接使用单一大小写(都会做忽略大小写处理)

#查询学生姓张的学生信息
SELECT
	id,
	name,
	age
FROM
	student
WHERE 
	name LIKE '张%';
	
#查询学生名字第二个字是明的学生信息
SELECT
	id,
	name,
	age
FROM
	student
WHERE 
	name LIKE '_明%';

注意:当需要查询的信息中含有%或_ 关键符号时 可以用’\ '转义符进行转义。例如:

# 查询第二个字符为'_'的和倒数第二个字符为'%'的字符信息
SELECT
	*
FROM
	table
WHERE
	string LIKE '_\_%\%_';
#'_\_%\%_':   \_表示第二个元素是_,\%表示倒数第二个元素是%

连接查询

连接查询:查询时记录来自于多张表。实际开发中我们查询的数据往往来自于多张表 连接分为内连接、外连接和全连接

连接查询的基本语法

SELECT
	(需要查询的信息)
FROM1,
	表2
WHERE1.编号=2.编号
#如果没有where中的条件,查询的结果会出现笛卡尔积现象

注意:
多表查询会出现的现象:笛卡尔积现象(数学) x*y
多表查询的时候一般是需要给表起别名的

sql99标准的写法使用JOIN ON关键字连接两表

SELECT
	(需要查询的信息)
FROM1
JOIN2
ON1.编号=2.编号

示例:查询成绩大于60分的学生信息;(成绩信息在成绩表score中,学生信息在学生表student中)

SELECT
	a.id,
	a.name,
	a.age
FROM
	student a
JOIN
	score b
ON	a.id=b.id
WHERE
	b.score>60;

你可能感兴趣的:(MySQL)