Oracle
未读
REGEXP_REPLACE的使用方法
命令格式: regexp_replace(source, pattern, replace_string, occurrence) 参数说明: ● source: string类型,要替换的原始字符串。 ● pattern: string类型常量,要匹配的正则模式,pattern为空串时抛异常。 ●
Oracle
未读
listagg与九九乘法表
WITH n AS
(SELECT LEVEL AS lv FROM dual CONNECT BY LEVEL <= 9),
m AS
(SELECT a.lv lv_a,
b.lv lv_b,
a.lv || ' X ' || b.lv || ' = '
Oracle
未读
偏移量分析函数lead、lag
语法: lead (expression ,[offset,[default]])
over ([query_partition_clause] order_by_clause) expression :可以包含除了分析函数意外的任何oracle内置函数。 offset :可选项,表里偏移当前行的值
Oracle
未读
Oracle date相关
date转化为星期 to_char(date,'DAY') --转为星期
to_char(date,'D') --转为数字,1-7为星期日到星期一 to_char(date) select sysdate,to_char(sysdate,'yyyy')from dual; --年
select
Oracle
未读
Oracle Order By排序的用法
Asc升序 不使用asc with main as (select 3 as id, '张三' as name from DUAL
union
select 4 as id, '李四' as name from DUAL
Oracle
未读
使用round计算百分比
round函数 1、计算两个字段的百分比 SELECT talA,talB,round((talA/talB)*100,int a)||'%' AS PERCENT FROM TABLE_NAME; 其中a为保留小数的位数 其中,如果talB为0,即除数为0时,执行语句,会报错“除数不能为0”,这时
Oracle
未读
listagg多行合并为一行
listagg有两种用法: 1、分析函数,如: row_number()、rank()、dense_rank() 等,用法相似 listagg(合并字段, 连接符) within group(order by 合并的字段的排序) over(partition by 分组字段) 2、聚合函数,如:su
Oracle
未读
Oracle函数row_number
row_number()over(partition by column_1,column_2)函数 1、案列一、使用该函数去重 天庭要给各路神仙发放中秋节礼物,统计了地址,但是有的需要神仙填写了多次数据,现在要进行去重,真实地址按照最后一次提交的时间为准 源数据: 解决办法: select *
f
Oracle
未读
Oracle多行合并为一行
listagg()within group(order by)多行合并为一行 listagg为Oracle 11.2新增的函数,用于字符串拼接,可以将多行数据合并为一行 比如查询STUDENTS表中各个年级的学生,源数据如下: SQL> select * from STUDENTS t;
S_ID