Mysql进阶一:基础查询

DQL语句之基础查询(Data QueryLanguage数据查询语言)

基础查询:

语法:

SELECT 查询列表 FROM 表名;

特点:
1.查询的表可以是:表中的字段、常量值、表达式、函数
2.查询的结果是一个虚拟的表格

0.用于指定在哪个库进行操作

 USE myemployees ;

1.查询表中的单个字段

SELECT first_name FROM employees;

2.查询表中的多个字段

SELECT last_name,salary,email FROM employees;

3.查询表中的所有字段

方式1:

SELECT 
`first_name`,
`last_name`,
`email`,
`phone_number`,
`job_id`,
`salary`,
`commission_pct`,
`manager_id`,
`department_id`,
`hiredate`

FROM employees;

方式2

SELECT * FROM employees;

4. 查询常量值

SELECT 100;
SELECT 'john';

5.查询表达式

SELECT 100%98;

6.查询函数

SELECT VERSION(); 

7.起别名

起别名用于区别开重名字段;

方式1(用as):

SELECT 100%98 AS 结果;
SELECT last_name AS 姓 ,first_name AS 名 FROM employees;

方式2(用空格):

SELECT last_name 姓 ,first_name 名 FROM employees;

案例1:查询salary 显示结果为 out put

SELECT salary AS "out put" FROM employees;

8.去重

案例2:查询员工表中涉及到的所有部门的编号

SELECT DISTINCT department_id FROM employees;

9.+号的作用

java中的+号:
1.运算符:两个操作数都为数值型
2.连接符: 只要+的任一侧有字符型,则就为连接符

mysql中的+号:只能作为运算符

SELECT 100+90; 两个操作数都为数值型 则加法运算

select ‘123’+90; 如果一个字符型 和数值型,则试图将字符型转换为字符型,如果转换成功,则作加法运算;

select ‘hone’+90; 如转换失败,则将字符型数值转换为0;

select null+10;只要其中一方为null,则结果必定为null。

案例3:查询一个员工名和姓连接成一个字段,并且显示为 姓名

CONCAT 用于连接;
SELECT CONCAT('a','b','c') AS 结果;

SELECT 
	CONCAT (last_name,first_name) AS 姓名
FROM 
	employees;

测试题

1.输出employee_id的年薪

SELECT employee_id,last_name,salary*12  AS "annual salary" FROM employees; #年薪=月薪*12

2. 显示departments的结构,宁查询全部数据

DESC departments;
SELECT * FROM departments;

3. 显示出表employees中的全部job_id(不能重复)

SELECT DISTINCT job_id FROM employees;

4.显示表employees的所有列,各列之间用逗号连接,列头显示成out_put

SELECT 
	IFNULL(commission_pct,0) AS 奖金率,
	commission_pct
FROM
	employees;

SELECT
	CONCAT(first_name,',',last_name,',',job_id,',',IFNULL(commission_pct,0)) AS out_put
FROM
	employees;
发布了113 篇原创文章 · 获赞 58 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/QQQZSJ/article/details/104024351