02-DQL语言-01基础查询

本文介绍了SQL查询的基础语法,包括从选择单个字段到查询表达式、函数运用,以及如何使用别名、去重和字符串拼接。通过示例展示了在`employees`表中的应用,如查询员工的姓名、薪水、去重的部门ID等,还探讨了`IFNULL`和`CONCAT`函数的使用,帮助读者掌握SQL查询的基本技巧。
摘要由CSDN通过智能技术生成

第二部分的思维导图

理论

一、语法:

select 查询列表 from 表名

二、特点:

  1. 查询列表可以是:单个表中的字段、常数、表达式、函数,也可以是多个
  2. 查询的结果是一个虚拟的表格

三、示例:

1、查询单个字段

select 字段名 form 表名;

2、查询多个字段

select  字段名, 字段名 from 表名;

3、查询所有字段

select * from 表名;

4、查询常量

select 常量值;

注意:字符型和日期型的常量值必须用单引号引起来,数值型不需要

5、查询函数

select 函数名(实参列表);

6、查询表达式

select 100/24216

7、起别名
①as
②空格

8、去重

select distinct 字段名 from 表名;

9、+
作用:做加法运算
select 数值+数值:直接运算
select 字符+数值;先试图将字符转换成数值,如果转换成功,则继续运算,否则转换成0,在做运算
select null +值; 结果都为null

10、【补充】concat函数
功能:拼接字符

select concat (字符1,字符2,字符3,)

11、【补充】ifnull函数
功能:判断某字段或表达式是否为null,如果为null 返回指定的值,否则返回原本的值

select ifnull(commossion_pct,0) from employees;

12、【补充】isnull函数
功能:判断某字符或表达式是否为null,如果是,则返回1,否则返回0

语法: select 查询列表 from 表名 特点:
1.查询列表可以是:表中的字段、常数、表达式,函数
2.查询的结果是一个虚拟的表格

USE employees;

案例

1.查询表中单个字段

SELECT last_name FROM employees;

2.查询表中段

SELECT last_name,salary,email 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 "join";

5、查询表达式

SELECT 100%98;
SELECT 100%98;

6、查询函数

SELECT VERSION();

7、起别名

①便于理解
②如果要查询的字段有重名的情况,使用别名可以区分开来

#方式一:使用as

SELECT 100%98 AS 答案;
 
SELECT 
    first_name AS,
    last_name AS,
    salary AS 工资
FROM
    employees;

#方式二:使用空格

SELECT first_name 名,last_name 姓 FROM employees;

8、去重

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

SELECT DISTINCT department_id FROM employees;

9、+号的作用

仅仅只有一个功能:运算符 select 100+99;两个操作数为数值型,则做加法运算 select
‘123’+90;只要其中一方为字符型,试图将字符型数值转化为数值型,如果转移成功,则继续做加法运算 select ‘john’+90;
如果转换失败,则将字符型数值转化为0 select null+10;只要其中一方为null,则结果肯定为null

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

SELECT CONCAT('a','b','c') AS 合并;

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

10、其他案例

#1、显示表employees的结构,并查询其中的全部数据

DESC employees;
SELECT * FROM employees;

#2、显示出表employees中全部job_id(不能重复)

SELECT DISTINCT job_id FROM employees;

#3、显示表中employees的全部列。各个列之间用逗号相连,列头显示成out_put


SELECT 
    CONCAT(`first_name`,',',`last_name`,',',`salary`) AS OUT_PUT
FROM 
    employees;
    
    
    
#---------案例3的基础上看奖金率--------------------------
SELECT 
CONCAT(`first_name`,',',`last_name`,',',`salary`) AS 姓名,
IFNULL (commission_pct,0) AS 奖金率
FROM employees;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值