前言 ´・ᴗ・`
- 本节主要讲了select语句的基本使用 作为数据查询DQL的开端
- 本篇内容将会带你学习…
- 1 SELECT语句的基本使用
- 2 AS DISTINCT CONCAT IFNULL 关键字的用法
AS 重命名
Q3 如何实现下面的效果?
A3:
USE data1;
SELECT
`first_name` AS 名,
`last_name` AS 姓,
`salary` AS 工资
FROM
employees ;
select语句语法
Q4 这段代码运行后
USE data1;
SELECT
`first_name` AS 名,
`last_name` AS 姓,
`salary` AS 工资,
FROM
employees ;
结果是:
错在哪里?怎么改?
A4 错在 多了个逗号 语句中不能多或者少一个逗号
USE data1;
SELECT
`first_name` AS 名,
`last_name` AS 姓,
`salary` AS 工资
FROM
employees ;
或者你这么写更简洁:
USE data1;
SELECT
`first_name` 名,
`last_name` 姓,
`salary` 工资
FROM
employees ;
计算表达式 执行函数
Q5 SELECT 语句还有别的作用嘛:
A5 类似运行 可以算表达式 可以执行函数:

DISTINCT 去重
想要所有的编号
use data1;
SELECT `department_id` FROM employees;

明显重复了 这时采用 distint:
USE data1;
SELECT DISTINCT `department_id` FROM employees;

CONCAT 连接字符串
我觉得last_name first_name 太麻烦了 合并怎么样呢?于是:
USE data1;
SELECT DISTINCT
CONCAT(`last_name`, `first_name`) AS 名字,
`salary` AS 工资
FROM
employees ;
这里sql语句的+号没有连接字符串功能 于是只能用concat
另外 如果想要添加其他字符串 记得用上引号
不要和` 搞混了
IFNULL 函数用法

例题
实现
难点在于 concat会在遇到NULL的时候就把整个字符串变为NULL
即 NULL + ‘string’ = NULL
所以利用IFNULL进行一个转义的操作
USE data1;
SELECT
CONCAT(
`first_name`,
',',`last_name`,
',',IFNULL(`manager_id`,0),
',',IFNULL(`job_id`,0),
',',IFNULL(`email`,0),
',',IFNULL(`commission_pct`,0)) 职工基本情况
FROM employees;
这里还有个更加优雅的用法:
WS - with separator
USE data1;
SELECT
CONCAT_WS(','
`first_name`,
`last_name`,
IFNULL(`manager_id`,0),
IFNULL(`job_id`,0),
IFNULL(`email`,0),
IFNULL(`commission_pct`,0)) 职工基本情况
FROM employees;
这样是不是会方便很多呢?
总结 ´◡`
学习这些关键字至关重要——因为后面的数据查询还有其他语言比如DDL DML或多或少都会用到
也就是 关键字是通用的
- 下一站:
- 需要跳读的同学可以看这里:
版权声明:本文为weixin_43178828原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。