第一章 检索基础记录

本文介绍了如何使用SQL进行数据检索,包括选择所有行和列、指定条件过滤行、选择特定列、拼接列值、使用条件逻辑以及处理NULL值和执行模糊匹配。示例涵盖了基本的SELECT语句、WHERE子句、CONCAT函数、CASE语句和LIKE运算符的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1
检索表中所有的行和列?

使用 SELECT 语句来查询表,并使用特殊字符 * 指定返回所有的列:

select * from table

1.2
从表中检索部分行?

使用 WHERE 子句来指定要返回哪些行。例如,要查看部门编号为 10 的所有员工,可以像下面这样做。

select *
from table  
where deptno = 10

1.3
查找满足多个条件的行?

结合使用 WHERE 子句、OR 子句和 AND 子句。例如,要查找部门编号为 10 的员工、有业务提成的员工以及薪水不超过 2000 美元且部门编号为 20 的员工,可以像下面这样做。

select *
from emp
where deptno = 10 
      or comm is not null
      or sal <= 2000 and deptno=20

1.4
从表中检索部分列?

指定要查看的列。例如,只查看员工的姓名、部门编号和薪水。

select ename,deptno,sal
from emp

1.5 拼接列值?

 CONCAT用法

select concat(ename, job) as msg
from emp3  
where deptno=10

1.6 在SELECT语句中使用条件逻辑?

在 SELECT 语句中,你想执行基于值的 IF-ELSE 操作。例如,在生成结果集时,你想在员工的薪水不超过2000 美元时返回消息 UNDERPAID,在员工的薪水不低于 4000 美元时返回消息 OVERPAID,在员工的薪水为 2000~4000 美元时返回消息 OK。

select ename,sal,
       case when sal <= 2000 then 'UNDERPAID'
            when sal >= 4000 then 'OVERPAID'                 
            else 'OK'        
            end as status
from emp

1.7 将NULL转换为实际值?

使用函数 COALESCE 将 NULL 值替换为实际值

select coalesce(comm,0)
from emp

1.8 模糊匹配?

部门编号为 10 和部门编号为 20 的员工中,你只想返回那些姓名包含字母 I 或职位名称以 ER 结尾的员工。

结合使用 LIKE 运算符和 SQL 通配符(%)

select ename, job
from emp3  
where deptno in (10,20)    
    and (ename like '%I%' or job like '%ER')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值