MySQL学习笔记(5)

5. MySQL学习第五天

5.1 SELECT简单查询

数据查询也称为数据检索,是从数据库中获取所需数据的操作和过程。用户根据实际应用的需求,可以使用不同的查询方式,以获得不同的数据。数据查询是数据库管理系统(DBMS)的重要功能之一,是数据库操作中最常用,最重要的操作

MySQL中使用SELECT语句查询数据的主要方式有:

  • 查询表中一列或多列数据
  • 带条件的查询
  • 多表间的连接查询
  • 嵌套子查询以及使用聚合函数进行统计查询

SELECT语句的基本语法:

SELECT select_expr[select_expr …]
FROM table_references
WHERE where_condition
GROUP BY col_name
HAVING where_condition
ORDER BY col_name
LIMIT row_count

结合前面提到过的Course数据库

查询单个数据表的SELECT语句:

SELECT * FROM teacher;

查询数据表中指定字段数据的SELECT语句:

SELECT 
    Student_name,
    Student_id 
FROM student;

查询数据表中指定字段数据并以别名线束的SELECT语句:

SELECT 
    Student_name AS 学生姓名,
    Student_id AS 学生号
FROM student;

查询数据表中内容并按照条件显示指定字符:

SELECT
    Student_id AS 学号,
    Course_id AS 课程号,
    (case when Score>=60 then '及格' else '不及格' end) AS 成绩情况
FROM choose;

条件查询:

SELECT 字段名
FROM 表名
WHERE 条件;
运算符说明
=等于
>大于
<小于
>=大于或等于
<=小于或等于
<>、!=

不等于

IS NULL为空
IS NOT NULL不为空
BETWEEN A AND B在A与B之间
IN在范围内
NOT IN不再范围内
LIKE模式匹配
NOT LIKE模式不匹配
REGEXP正则表达式
AND、&&
OR、||
NOT、!
XOR异或

条件查询的简单实例

按学号查询某个学生的个人信息

SELECT *
FROM student
WHERE student_id = '201702020202';

查询1997年出生的学生的学号、姓名和生日信息

SELECT
    student_id AS 学号,
    student_name AS 姓名,
    birthday AS 出生日期
FROM student
WHERE birthday>='1997-01-01' AND birthday<='1997-12-31';

查询职称为“讲师”、“副教授”的女教师的教师编号、姓名、性别和职称

SELECT
    teacher_id AS 教师编号,
    teacher_name AS 教师姓名,
    teacher_gender AS 教师性别,
    professional AS 职称
FROM teacher
WHERE teacher = '女' AND (professional = '讲师' OR professional = '副教授');

查询1997、1998年出生的学生的学号、姓名和生日信息

SELECT
    student_id AS 学号,
    student_name AS 姓名,
    birthday AS 出生日期
FROM student
WHERE year(birthday) IN (1997,1998);

查询职称为“讲师”或“副教授”的教师信息

SELECT *
FROM teacher
WHERE professional IN ('讲师','副教授')

查询1997年出生的学生信息

SELECT *
FROM student
WHERE birthday BETWEEN '1997-01-01' AND '1997-12-31';

查询学分为3~5分的课程信息

SELECT *
FROM course
WHERE Credit BETWEEN 3 AND 5;

模糊查询

查询“王”姓男同学信息

SELECT *
FROM student
WHERE student_name LIKE '王%' AND gender = '男';

查询名字中第二个字为“娜”的同学信息

SELECT *
FROM student
WHERE student_name LIKE '_娜%';

查询家庭住址中有“重庆”字样的同学信息

SELECT *
FROM student
WHERE Home_address LIKE '%重庆%';

空值查询

查询选课时间不确定的课程信息

SELECT *
FROM course
WHERE bigin_choose_time IS NULL;

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值