0

0

Oracle SQL基础

php中文网

php中文网

发布时间:2016-06-07 17:29:37

|

1088人浏览过

|

来源于php中文网

原创

1、nvl('A','B') 如果a为null,则显示B 2、DECODE(value, if1, then1, if2,then2, if3,then3, . . . else ) 3、grouping函数用法,带一个参数,参数为字段名,结果是根据该字段得出来的就返回1,反之返回0 4、Over over不能单独使用,要和分析函数:rank(),d

1、nvl('a','b') 如果a为null,则显示b

2、DECODE(value, if1, then1, if2,then2, if3,then3, . . . else )

3、grouping函数用法,带一个参数,参数为字段名,结果是根据该字段得出来的就返回1,反之返回0

4、Over

over不能单独使用,要和分析函数:rank(),dense_rank(),row_number()等一起使用。
其参数:over(partition by col1 order by col2)
含义:按col1指定的字段进行分组,然后再按照col2进行排序

4、开窗函数:rank() over ( partition by [col1],[col2]... by [col3]desc)

rank,dense_rank,row_number的区别:
结果集中如果出现两个相同的数据,那么rank会进行跳跃式的排名,
比如两个第二,那么没有第三接下来就是第四;
但是dense_rank不会跳跃式的排名,两个第二接下来还是第三;
row_number最牛,即使两个数据相同,排名也不一样。

5、distinct 去重复

6、Lag和Lead函数可以在一次查询中取出某个字段的前N行和后N行的数据(可以是其他字段的数据,,比如根据字段甲查询上一行或下两行的字段乙),原来没有分析函数的时候采用子查询方法,但是比较麻烦,惭愧,我用子查询有的还查不出来呢。

网易天音
网易天音

网易出品!一站式音乐创作工具!零基础写歌!

下载


语法如下:
lag(value_expression [,offset] [,default]) over ([query_partition_clase] order_by_clause);
lead(value_expression [,offset] [,default]) over ([query_partition_clase] order_by_clause);
其中:
value_expression:可以是一个字段或一个内建函数。
offset是正整数,默认为1,指往前或往后几点记录.因组内第一个条记录没有之前的行,最后一行没有之后的行,
default就是用于处理这样的信息,默认为空。

求出每个打工者上个月和下个月有没有赚钱(personincome大于零即为赚钱)

select distinct earnmonth,sname, lag(decode(nvl(personincome,,),1,0) over(partition by sname order by earnmonth) PerMonth, lead(decode(nvl(personincome,,),1,0) over(partition by sname order by earnmonth) NextMonth from earnings;

详细内容:

7、两种CASE

简单case:

CASE search_expression   WHEN expression1 THEN result1   WHEN expression2 THEN result2   ...   WHEN expressionN THEN resultN   ELSE default_result

如果search_expression 是null,则会走ELSE,不会进行其他匹配,而decode无此问题。

搜索case:
直接使用case when +比较条件 到end为返回的结果,end之后可以做运算。
语法:

case when Boolean then returnvalue when Boolean then return value ... Else Returnvalue End

linux

相关专题

更多
c++ 根号
c++ 根号

本专题整合了c++根号相关教程,阅读专题下面的文章了解更多详细内容。

42

2026.01.23

c++空格相关教程合集
c++空格相关教程合集

本专题整合了c++空格相关教程,阅读专题下面的文章了解更多详细内容。

46

2026.01.23

yy漫画官方登录入口地址合集
yy漫画官方登录入口地址合集

本专题整合了yy漫画入口相关合集,阅读专题下面的文章了解更多详细内容。

202

2026.01.23

漫蛙最新入口地址汇总2026
漫蛙最新入口地址汇总2026

本专题整合了漫蛙最新入口地址大全,阅读专题下面的文章了解更多详细内容。

341

2026.01.23

C++ 高级模板编程与元编程
C++ 高级模板编程与元编程

本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。

16

2026.01.23

php远程文件教程合集
php远程文件教程合集

本专题整合了php远程文件相关教程,阅读专题下面的文章了解更多详细内容。

100

2026.01.22

PHP后端开发相关内容汇总
PHP后端开发相关内容汇总

本专题整合了PHP后端开发相关内容,阅读专题下面的文章了解更多详细内容。

73

2026.01.22

php会话教程合集
php会话教程合集

本专题整合了php会话教程相关合集,阅读专题下面的文章了解更多详细内容。

75

2026.01.22

宝塔PHP8.4相关教程汇总
宝塔PHP8.4相关教程汇总

本专题整合了宝塔PHP8.4相关教程,阅读专题下面的文章了解更多详细内容。

67

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
SQL 教程
SQL 教程

共61课时 | 3.6万人学习

Java 教程
Java 教程

共578课时 | 50.9万人学习

SQL优化与排查(MySQL版)
SQL优化与排查(MySQL版)

共26课时 | 2.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号