Oracle中常用语法

一、最常用字符串函数(高频)

sql 复制代码
1. SUBSTR(字段, 起始位, 长度)    -- 截取字符串
   SUBSTR('202503', -2, 2)  → '03'

2. LENGTH(字段)                -- 长度
3. LENGTHB(字段)               -- 字节长度(中文2字节)

4. TRIM(字段)                  -- 去空格
5. NVL(字段, 0)                -- 空值替换(最常用)
6. DECODE(字段,A,B,C,D,E)      -- 等值判断
   DECODE(STATUS,'1','正常','0','禁用','未知')

7. INSTR(字符串, 字符)         -- 查找位置
   INSTR(C_KM_CODE,'_') =0 → 不含下划线

8. REPLACE(字段,旧,新)         -- 替换

二、数值运算(必用)

sql 复制代码
1. SUM(字段)     -- 求和
2. COUNT(*)      -- 计数
3. AVG()         -- 平均
4. MAX()/MIN()   -- 最大/最小
5. ROUND(数值, 位数)    -- 四舍五入
6. CEIL(数值)           -- 向上取整
7. MOD(数值, 基数)      -- 取余(分页常用)
   MOD(rownum,100) → 0-99循环

三、日期函数(超级常用)

sql 复制代码
1. SYSDATE                  -- 当前系统时间
2. TRUNC(SYSDATE)           -- 今天 00:00:00
3. 字段 + 1                  -- 加1天
4. ADD_MONTHS(日期, 月份)     -- 加月份
5. LAST_DAY(日期)            -- 当月最后一天
6. TO_CHAR(日期,'yyyy-MM-dd') -- 转字符串
7. TO_DATE('20250101','yyyyMMdd') -- 转日期

四、条件判断(写业务必用)

1. DECODE(简单判断)

sql 复制代码
DECODE(C_DAT_CLS,'CLS_HB','场外','场内')

2. CASE WHEN(复杂业务,最常用)

sql 复制代码
CASE 
   WHEN 条件1 THEN 结果1
   WHEN 条件2 THEN 结果2
   ELSE 默认值
END

五、多表连接(你天天写)

sql 复制代码
1. LEFT JOIN   -- 左连接(保留左表全部)
2. INNER JOIN  -- 内连接(只保留匹配)
3. FULL JOIN   -- 全连接(两边都保留,对账用)
4. WHERE A.ID = B.ID(+)  -- Oracle 旧版左连接

六、子查询 / WITH 子句(复杂报表)

sql 复制代码
-- 公用表表达式(推荐)
WITH TEMP AS (
   SELECT * FROM 表
)
SELECT * FROM TEMP

七、分组与过滤

sql 复制代码
GROUP BY 字段1,字段2
HAVING SUM(金额) > 0  -- 分组后过滤

八、分页 / 行号(常用)

sql 复制代码
SELECT ROWNUM, t.* FROM 表 t
WHERE ROWNUM <= 100

九、常用符号

sql 复制代码
<>    不等于
LIKE  模糊匹配 '%A%'
IN    在列表中
IS NULL / IS NOT NULL

十、你业务中最常用的组合(重点记)

sql 复制代码
1. NVL(字段, 0)             -- 空值变0
2. SUBSTR(字段,-2,2)        -- 取最后两位
3. CASE WHEN 业务判断 THEN 显示 END
4. SUM(DECODE(类型,码值,金额))  -- 行转列统计
5. LEFT JOIN 对账、关联字典

相关推荐
小李不困还能学34 分钟前
VSCode远程开发免密码登录
ide·vscode·编辑器
?? Daisy1 小时前
Codex 接入第三方 API:CLI 与编辑器扩展的配置方法(2026-10)
编辑器
初雪云1 天前
UniApp 云打包拿到 IPA 后,真正的发布工作才刚开始
ios·自动化·编辑器·产品经理·iphone
幸运小圣2 天前
Buffer 新手入门【Node.js】
node.js·编辑器·vim
*wait for?2 天前
VScode使用uv-创建python虚拟环境
ide·vscode·编辑器
lzx_0022 天前
Linux 开发工具(二) 简单认识一下编辑器 —— vim
linux·编辑器·vim
golang学习记4 天前
VSCode AI完成任务的仪式感:撒礼花
ide·vscode·编辑器
mklpo1476 天前
在win7 sp1 系统上安装最新版 的 Visual Studio Code。2026-10-04
ide·vscode·编辑器
Highcharts.js7 天前
图表开发实战总结| 7 条“黄金法则”与“性能铁律”
前端·javascript·vue.js·编辑器·时序数据库·highcharts
广东帝工8 天前
智能防撞进入高增长周期:多技术融合推动桥梁防护从被动硬抗迈向主动预警时代
编辑器