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 对账、关联字典

相关推荐
时空自由民.12 小时前
vim入门配置教程
编辑器·vim·excel
梦想家加一20 小时前
vscode为什么下载了汉化插件却不生效
ide·vscode·编辑器
神码编程21 小时前
【Unity】MiniGame编辑器小游戏(十五)中国象棋局域网对战【Chinese Chess】(上)
unity·编辑器·游戏引擎·小游戏
多云的夏天21 小时前
IDE-VSCODE-Continue + DeepSeek V4
ide·vscode·编辑器·deepseek
Robot_Nav1 天前
Claude Code cli 以及vscode版本的各种命令参考手册
ide·vscode·编辑器
hef2881 天前
Vim使用详解:查找、高亮与行显示设置指南
linux·编辑器·vim
神码编程1 天前
【Unity】MiniGame编辑器小游戏(十六)中国象棋局域网对战【Chinese Chess】(下)
unity·编辑器·游戏引擎·小游戏
屋外雨大,惊蛰出没2 天前
Vscode自动生成类图
ide·vscode·编辑器·类图绘制
ONLYOFFICE2 天前
ONLYOFFICE 文档9.4发布:许可证更新、电子表格的深色模式、水平分隔线、新幻灯片主题与切换等
编辑器·onlyoffice
qq_14030341442 天前
vscode过滤文件
ide·vscode·编辑器