北京网站制作公司兴田德润在那里旅游网站制作方法
一、基本查询操作
-  从表中选取特定列 sql -- 从 employees 表中选取 last_name 列 SELECT last_name FROM employees;-- 从 employees 表中选取 last_name、salary、email 列 SELECT last_name, salary, email FROM employees;
-  获取表的全部列信息 sql -- 从 jobs 表中获取所有列的信息 SELECT * FROM jobs;
-  查询常量、表达式以及函数结果 sql -- 查询数字常量 100 SELECT 100;-- 查询字符串常量 'join' SELECT 'join';-- 计算表达式 100 * 8 的值 SELECT 100 * 8;-- 调用 VERSION() 函数获取 MySQL 版本号 SELECT VERSION();
二、查询结果的优化处理
-  为列或结果设置别名 sql -- 方式一:使用 AS 关键字 SELECT 100 AS 计算结果;-- 方式二:省略 AS 关键字 SELECT 100 计算结果;
-  去除查询结果中的重复值 sql -- 从 employees 表中选取不重复的 department_id 列 SELECT DISTINCT department_id FROM employees;
-  进行字符串拼接操作 sql -- 使用 CONCAT 函数拼接字符串 'a' 和 'b' SELECT CONCAT('a', 'b') AS 拼接结果;
三、条件查询功能
-  条件运算符的运用 sql -- 查找 salary 列值大于等于 10000 的员工记录 SELECT * FROM employees WHERE salary >= 10000;-- 查找 department_id 列值不等于 90 的员工的 last_name 和 department_id SELECT last_name, department_id FROM employees WHERE department_id != 90;-- 查找 salary 列值在 10000 到 20000 之间的员工记录 SELECT last_name, salary, commission_pct FROM employees WHERE salary BETWEEN 10000 AND 20000;
-  模糊查询的实现 sql -- 查找 last_name 列值包含字母 'a' 的员工记录(% 代表任意多个字符) SELECT * FROM employees WHERE last_name LIKE '%a%';-- 查找 last_name 列值为 5 个字符且第三个字符为 'e'、第五个字符为 'a' 的员工记录(_ 代表单个字符) SELECT * FROM employees WHERE last_name LIKE '__e_a%';
-  处理 NULL 值的查询 sql -- 查找 commission_pct 列值为 NULL 的员工记录 SELECT * FROM employees WHERE commission_pct IS NULL;-- 查找 commission_pct 列值不为 NULL 的员工记录 SELECT * FROM employees WHERE commission_pct IS NOT NULL;
四、运算符与逻辑操作符
| 运算符类型 | 运算符列表 | 说明 | ||
|---|---|---|---|---|
| 比较运算符 | =,>,<,>=,<=,!= | 用于比较两个值的大小关系 | ||
| 逻辑运算符 | AND/&&,OR/` | , NOT/!` | 用于组合多个查询条件 | |
| 模糊匹配符 | LIKE | 结合 %或_进行模式匹配 | ||
| 范围运算符 | BETWEEN ... AND ... | 用于指定一个值的范围 | ||
| 集合运算符 | IN | 用于判断值是否在指定的集合中 | 
五、注意要点
-  运算符的优先级 - 比较运算符的优先级高于逻辑运算符。
- 可以使用括号 ()来明确查询条件的执行顺序。
 
-  性能方面的考量 - 在使用 LIKE进行模糊查询时,避免以%开头,因为这可能会导致全表扫描,影响查询性能。
- 对于大数据量的去重操作,DISTINCT可能会使查询性能下降,需要谨慎使用。
 
- 在使用 
-  转义字符的使用 - 当需要匹配 %或_本身时,需要使用转义字符\。
 sql -- 查找 last_name 列值包含 '%' 的员工记录 SELECT * FROM employees WHERE last_name LIKE '%\%';
- 当需要匹配 
附录:示例表结构
-  employees 表 列名 数据类型 说明 employee_id INT 员工编号,主键 last_name VARCHAR(50) 员工姓氏 salary DECIMAL(10,2) 员工工资 email VARCHAR(100) 员工邮箱 department_id INT 员工所在部门编号 commission_pct DECIMAL(4,2) 员工奖金比例(可能为 NULL) 
-  departments 表 列名 数据类型 说明 department_id INT 部门编号,主键 department_name VARCHAR(50) 部门名称 manager_id INT 部门经理编号 
-  jobs 表 列名 数据类型 说明 job_id INT 职位编号,主键 job_title VARCHAR(50) 职位名称 min_salary DECIMAL(10,2) 该职位的最低工资 max_salary DECIMAL(10,2) 该职位的最高工资 
