MySQL 查询语句大全
本资源摘要信息是对 MySQL 查询语句大全的详细说明,该资源涵盖了 MySQL 查询语句的各种类型和应用场景。
一、两表之间的查询
在 MySQL 中,可以使用多种方式来查询两表之间的数据。例如,使用以下查询语句可以查询员工表中部门号与部门表中部门号相等的所有字段:
```sql
select * from tb_emp, tb_dept where tb_emp.deptno=tb_dept.deptno;
```
这将显示两张表中相等的部门号所有字段。也可以使用以下查询语句来查询员工表中的部门号,并且条件是员工表中部门号与部门表中部门号相等:
```sql
select tb_e.deptno from tb_e, tb_d where tb_e.deptno=tb_d.deptno;
```
这将显示员工表中的部门号,并且条件是员工表中部门号与部门表中部门号相等。
二、给字段取别名
在 MySQL 中,可以使用 AS 关键字来给字段取别名。例如:
```sql
select product_price*12 totsl_product_price from productinfo;
```
这将显示产品价格乘以 12 的结果,并将其别名为 totsl_product_price。也可以使用双引号来给字段取别名,例如:
```sql
select product_price*12 "totsl product_price" from productinfo;
```
三、NULL 和空值的区别
在 MySQL 中,NULL 和空值是不同的概念。例如:
```sql
select * from emp where description is null;
select * from emp where description =0;
select * from emp where description ='空格 ';
```
这三个查询语句的结果将不同。NULL 表示字段的值不存在,而空值表示字段的值为空。
四、distinct 关键字
distinct 关键字可以用于查询结果中清除重复的行。例如:
```sql
select distinct deptno, deptname from emp where deptno=23;
```
这将显示员工表中部门号为 23 的所有字段,并且清除重复的行。
五、别名的作用
别名的作用是让查询出来的结果可以让别人(外行)看了一目了然的作用。例如:
```sql
select ename, sal*12 as '年薪 'from emp;
```
这将显示员工表中的姓名和年薪,并且将年薪计算出来。
六、计算字段值
在 MySQL 中,可以使用算术运算符来计算字段值。例如:
```sql
select ename, sal*12 as '年薪 'from emp;
```
这将显示员工表中的姓名和年薪,并且将年薪计算出来。
七、不等值查询
在 MySQL 中,可以使用 != 或 <> 运算符来进行不等值查询。例如:
```sql
select * from productinfo where product_id!=33;
```
这将显示产品信息表中产品 ID 不等于 33 的所有字段。
八、小于查询
在 MySQL 中,可以使用 < 运算符来进行小于查询。例如:
```sql
select * from productinfo where product_id<'33';
```
这将显示产品信息表中产品 ID 小于 33 的所有字段。
九、大于查询
在 MySQL 中,可以使用 > 运算符来进行大于查询。例如:
```sql
select * from productinfo where product_id>'33';
```
这将显示产品信息表中产品 ID 大于 33 的所有字段。
十、等于查询
在 MySQL 中,可以使用 = 运算符来进行等于查询。例如:
```sql
select * from productinfo where product_id='33';
```
这将显示产品信息表中产品 ID 等于 33 的所有字段。
十一、在一定值范围内查询
在 MySQL 中,可以使用 AND 运算符来进行在一定值范围内查询。例如:
```sql
select ename, sal as '月薪 'from emp where sal>=1000 and sal<=5000;
```
这将显示员工表中薪资在 1000 到 5000 之间的所有字段。
十二、between 查询
在 MySQL 中,可以使用 BETWEEN 运算符来进行在一定值范围内查询。例如:
```sql
select ename, sal as '月薪 'from emp where sal between 1000 and 5000;
```
这将显示员工表中薪资在 1000 到 5000 之间的所有字段。
十三、in 查询
在 MySQL 中,可以使用 IN 运算符来进行在什么里面查询。例如:
```sql
select ename, sal,deptno from emp where deptno in (25,26,20);
```
这将显示员工表中部门编号为 25、26 或 20 的所有字段。
十四、like 查询
在 MySQL 中,可以使用 LIKE 运算符来进行模糊查询。例如:
```sql
select ename, sal,deptno from emp where ename like '%ff' and deptname=' 市场部 ';
```
这将显示员工表中姓名包含 ff 的所有字段,并且部门名称是 市场部。
十五、not in 查询
在 MySQL 中,可以使用 NOT IN 运算符来进行不包含查询。例如:
```sql
select ename, sal,deptno from emp where deptno not in (25,26,20);
```
这将显示员工表中部门编号不包含 25、26 和 20 的所有字段。
十六、排序
在 MySQL 中,可以使用 ORDER BY 运算符来进行排序。例如:
```sql
select ename as '姓名 ', sal as'月薪 ' from emp order by sal+0;
```
这将显示员工表中的姓名和薪资,并且按照薪资排序。
本资源摘要信息涵盖了 MySQL 查询语句的各种类型和应用场景,旨在帮助开发者更好地使用 MySQL 查询语句来实现数据查询和分析。