MYSQL初阶学习笔记——进阶1:基础查询
#进阶1:基础查询
/*
语法:
select 查询列表
from 表名
*/
USE myemployees;
#加不加反引号 ` ` 都可以
#1.查询单个字段
SELECT `first_name` FROM `employees`;
#2.查询多个字段
SELECT `first_name`,`last_name`,`job_id` FROM `employees`;
#3.查询所有字段
#方式一:依次选取所有字段
SELECT
`first_name`,
`last_name`,
`email`,
`phone_number`,
`job_id`,
`salary`,
`commission_pct`,
`manager_id`,
`department_id`,
`hiredate`
FROM
`employees` ;
#方式二:*代表通配符
SELECT * FROM employees;
#4.查询常量值
SELECT 100;
SELECT 'john';
#5.查询表达式
SELECT 100%98;
#6.查询函数
SELECT VERSION();
#7. 起别名(外号)————便于理解,区别重名
#方式一: as
SELECT 100%98 AS 结果;
SELECT last_name AS 姓,first_name AS 名 FROM employees;
#方式二: 用空格
SELECT last_name 姓,first_name 名 FROM employees;
#用双引号或者单引号包括别名,避免关键字
#select salary as out put from employees;
#out put 中间有空格,需要引号
SELECT salary AS "out put" FROM employees;
#8.去重 关键字distinct
#案例:查询员工表中涉及的所有部门编号
SELECT DISTINCT department_id FROM employees;
#9.+号的使用方法
/*
mysql的+号只有一个功能:运算符,不能完成字符串拼接
select 100+90; 两个操作数都为数值型,则做加法运算
select '123'+90; 只要其中一方为字符型,则将字符型转换为数值型
若转换成功,继续加法运算
select 'john'+90; 若失败,则将字符型数值视为0
select null+10; 只要其中一方为null,则结果肯定为null
*/
#案例:查询员工名和姓连接成一个字段,并显示为姓名
#用+号并不能完成拼接
SELECT
last_name + first_name AS 姓名
FROM
employees ;
#失败,可以使用拼接函数concat
SELECT
CONCAT(last_name, first_name) AS 姓名
FROM
employees ;
#============================================================
#test
#1.语句执行
SELECT
last_name,
job_id,
salary AS sal
FROM
employees ;
#2.语句执行
SELECT * FROM employees;
#3.找出错误————中英文符号
SELECT
employee_id,
last_name,
salary * 12 AS "ANNUAL SALARY"
FROM
employees;
#4.显示表departments的结构,并查询其中全部数据
DESC departments;
SELECT * FROM departments;
#5.显示表employees中全部job_id(不能重复)
SELECT job_id FROM employees;#重复的
SELECT DISTINCT job_id FROM employees;#不重复的
#6.显示出employees的全部列,各个列之间用逗号连接,列头显示成OUT_PUT
SELECT
CONCAT(
`first_name`,
`last_name`,
`salary`,
`hiredate`
) AS OUT_PUT
FROM
employees;
#扩展,学习一个新函数 IFNULL(条件,为null的值)
SELECT `commission_pct`,
IFNULL(`commission_pct`,0) AS 奖金率
FROM employees;
/*
语法:
select 查询列表
from 表名
*/
USE myemployees;
#加不加反引号 ` ` 都可以
#1.查询单个字段
SELECT `first_name` FROM `employees`;
#2.查询多个字段
SELECT `first_name`,`last_name`,`job_id` FROM `employees`;
#3.查询所有字段
#方式一:依次选取所有字段
SELECT
`first_name`,
`last_name`,
`email`,
`phone_number`,
`job_id`,
`salary`,
`commission_pct`,
`manager_id`,
`department_id`,
`hiredate`
FROM
`employees` ;
#方式二:*代表通配符
SELECT * FROM employees;
#4.查询常量值
SELECT 100;
SELECT 'john';
#5.查询表达式
SELECT 100%98;
#6.查询函数
SELECT VERSION();
#7. 起别名(外号)————便于理解,区别重名
#方式一: as
SELECT 100%98 AS 结果;
SELECT last_name AS 姓,first_name AS 名 FROM employees;
#方式二: 用空格
SELECT last_name 姓,first_name 名 FROM employees;
#用双引号或者单引号包括别名,避免关键字
#select salary as out put from employees;
#out put 中间有空格,需要引号
SELECT salary AS "out put" FROM employees;
#8.去重 关键字distinct
#案例:查询员工表中涉及的所有部门编号
SELECT DISTINCT department_id FROM employees;
#9.+号的使用方法
/*
mysql的+号只有一个功能:运算符,不能完成字符串拼接
select 100+90; 两个操作数都为数值型,则做加法运算
select '123'+90; 只要其中一方为字符型,则将字符型转换为数值型
若转换成功,继续加法运算
select 'john'+90; 若失败,则将字符型数值视为0
select null+10; 只要其中一方为null,则结果肯定为null
*/
#案例:查询员工名和姓连接成一个字段,并显示为姓名
#用+号并不能完成拼接
SELECT
last_name + first_name AS 姓名
FROM
employees ;
#失败,可以使用拼接函数concat
SELECT
CONCAT(last_name, first_name) AS 姓名
FROM
employees ;
#============================================================
#test
#1.语句执行
SELECT
last_name,
job_id,
salary AS sal
FROM
employees ;
#2.语句执行
SELECT * FROM employees;
#3.找出错误————中英文符号
SELECT
employee_id,
last_name,
salary * 12 AS "ANNUAL SALARY"
FROM
employees;
#4.显示表departments的结构,并查询其中全部数据
DESC departments;
SELECT * FROM departments;
#5.显示表employees中全部job_id(不能重复)
SELECT job_id FROM employees;#重复的
SELECT DISTINCT job_id FROM employees;#不重复的
#6.显示出employees的全部列,各个列之间用逗号连接,列头显示成OUT_PUT
SELECT
CONCAT(
`first_name`,
`last_name`,
`salary`,
`hiredate`
) AS OUT_PUT
FROM
employees;
#扩展,学习一个新函数 IFNULL(条件,为null的值)
SELECT `commission_pct`,
IFNULL(`commission_pct`,0) AS 奖金率
FROM employees;