简单查询 回顾 数据完整性和完整性分类 NOT NULL约束 DEFAULT 约束 PRIMARY KEY约束 CHECK 约束 UNIQUE 约束 FOREIGN KEY约束 教学目标 掌握最基本的查询语句的用法 掌握ORDER BY子句的使用 掌握LIMIT子句的用法 掌握各类条件查询的用法 掌握聚合函数的使用 掌握列别名的用法 掌握分组查询的用法 掌握DISTINCT语句的用法 学习两个保存查询结果的语句 准备工作 以root用户登录到MySQL的客户端工具 使用如下命令,执行提前准备好的脚本文件 source d:\dept_emp.txt 编写如下SELECT语句,实现不同的查询功能 什么是查询? 怎么查? SELECT语句的功能和格式 SELECT是最重要SQL语句 SELECT语句可以用来: 显示表的几列或所有列。 显示表的几行或所有行。 显示表的统计信息,如列的平均值或汇总值。 合并两个或多个表的信息。 简单的SELECT语句的基本格式: 可以用“*”号表示表中所有的列。 查询所有数据 查询dept表的全部记录。 查询部分列 从dept表中检索所有的部门编号和部门名称信息。 查询结果排序 语法格式为: 查询结果排序 从emp表中查询员工编号、员工姓名和员工工资,查询结果按工资从高到低排列。 LIMIT子句 在MySQL中引入了LIMIT关键字,使分页和限制查询返回的行数更容易。 LIMIT子句放在查询语法的最后。 LIMIT子句的语法: LIMIT [start_row, ]row_count 表示对正常的查询结果中选取部分行(从第start_row行开始,取row_count行),行的索引从0开始。省略start_row参数,则从第1行(索引为0的行)开始选取。 LIMIT子句 从emp表中查询前5条记录。 LIMIT子句 假定从emp表中查询员工信息,对查询结果进行分页,每页5条,得到第2页: LIMIT子句与ORDER BY同时用 从emp表中查询工资从高到低排在前5位的员工编号、员工姓名和员工工资。 带条件的查询 数据库表通常很庞大,包含许多行数据,因此,查询结果要显示所有行有时候是不现实的,也是不必要的。 使用WHERE子句可以有条件地检索行,从表的数据集中筛选出符合条件的行。 带条件的查询 WHERE子句的搜索条件可以分为五类: 简单比较测试 范围测试 组成员测试 模式匹配测试 空值测试 简单比较测试 简单比较测试的一般形式是: 其中表达式为:常量、变量和列表达式的任意有效组合。 WHERE子句中允许使用的比较运算符包括:=(等于)、(大于)、<>(不等于)、!>(不大于)、!=(大于等于)、<=(小于等于)、!=(不等于)。 简单比较测试 在emp表中查询部门编号为10的员工的部门编号、员工编号和员工姓名信息: 在emp表中查询工资高于3000的员工的员工编号、员工姓名和工资信息: 范围测试 使用BETWEEN… AND…关键字可以方便的限制查询数据的范围 语法格式如下: 范围测试 在emp表中查询工资大于等于1000且小于等于3000的员工的员工编号、员工姓名和工资信息: 或者: 组成员测试 语法格式如下: 组成员测试 在emp表中查询编号为10、20、30三个部门的员工的部门编号、员工编号和员工姓名信息: 或者: 模式匹配测试 在实际的应用中,用户不会总是能够给出精确的查询条件。因此,经常需要根据一些并不确切的线索来搜索信息。 SQL提供了LIKE子句来进行这类模糊搜索。 语法格式为: 模式匹配测试 LIKE子句在大多数情况下会与通配符配合使用。 模式匹配测试 在emp表中查询名字中包含字母“A”的员工的员工编号、员工姓名信息: 在emp表中查询名字中第二个字母不为“A”的员工的员工编号、员工姓名信息: 空值测试 检测某个值是否为空,语法格式为: : 空值测试 在emp表中查询奖金(COMM)不为空的员工的员工编号、员工姓名、工资和奖金信息: 复合搜索条件 多个条件表达式之间可以通过逻辑运算符进行连接 WHERE子句中经常使用的逻辑运算符包括:NOT(非)、AND(与)、OR(或) 使用列别名 AS可有可无 SELECT ename 员工姓名 FROM dept; SELECT ename AS 员工姓名 FROM dept; 含有特殊字符(如空格),加单引号或双引号 SELECT ename ‘员 工 姓 名’ FROM dept; SELECT ename AS ‘员 工 姓 名’ FROM dept; 在查询中使用聚合函数 在查询中使用聚合函数 从emp表中查询所有员
mysql查询语句ppt_mysql简单查询.ppt
最新推荐文章于 2021-03-23 21:59:47 发布