- 查询空值:IS NULL;
- 非空值:IS NOT NULL;
- 将空值转换为实际值:
- NVL(source,target):不支持多个参数;
- coalesce(source,target):支持多个参数;
- 例子:返回第一个非空的列:
- nva(nvl(nvl(a1,a2),a3),a4);
- coalesce(a1,a2,a3,a4);
- 例子:返回第一个非空的列:
- 拼接使用“||”;
- 限制返回函数:使用伪列rownum:
- 不能直接使用rownum="所需行数",因为rownum是依次赋值的,首先得有第一行,之后才有第二行;
- 例如:取出第二行的数据:SELECT a1,a2 FROM(SELECT ROWNUM ru, a1,a2 FROM dual) t WHERE rn=2;
- 不能直接使用rownum="所需行数",因为rownum是依次赋值的,首先得有第一行,之后才有第二行;
- 随机数:dbms_random.value():
- 使用dbms_random.value()产生随机数:
- 例子:从表中随机获取三条数据:SELECT a1,a2 FROM(SELECT a1,a2 FROM dual ORDER BY dbms_random.value()) t WHERE ROWNUM<=3;
- 使用dbms_random.value()产生随机数:
- 转义ESCAPE:
- 例如:表数据值有为“_ACRAW”,若要进行模糊查询“_ACR%”,其中“_”在Oracle中为通配符,与“%”用法一直,都是代表一个或多个任意字符,需要使用ESCAPE '\' 字进行转义写为 LIKE ‘_\ACR%’ ESCAPE '\',如果进行模糊查询为“_\ACR%”,则 LIKE ‘_\\ACR%’ ESCAPE '\';
Oraclec查询优化-单表查询
最新推荐文章于 2023-07-25 21:26:03 发布