加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Oracle取行记录中某几个字段的最大值或最小值

(2020-03-02 22:40:53)
标签:

oracle取行最大值

oracle取行最小值

取一行记录中最大值最

取行记录中最大值

取行记录中最小值

分类: Oracle数据库
     在Oracle数据库的数据处理过程中,我们可能会遇到这样的需求,需要取行记录中某几个字段的最大值或者最小值,还好Oracle给我们提供了解决这种需求的函数,如下所示:
 
greatest(col1, col2, col3...)取得col1, col2, col3...字段中最大的值;
least(col1, col2, col3....)同理,取得col1,col2,col3...字段中最小的值。
 
以虚拟表进行演示,虚拟表内容如下:
SQL> with tab as(
  select 12 col1,23 col2,45 col3 from dual
  union all
  select 56 col1,17 col2,36 col3 from dual
  )
  select * from tab;
      COL1       COL2       COL3
---------- ---------- ----------
        12         23         45
        56         17         36
 
 
执行sql:select col1,col2,col3,greatest(col1,col2,col3)max_val,least(col1,col2,col3)min_val from tab;后,结果如下:
SQL> with tab as(
  select 12 col1,23 col2,45 col3 from dual
  union all
  select 56 col1,17 col2,36 col3 from dual
  )
  select col1,col2,col3,greatest(col1,col2,col3)max_val,least(col1,col2,col3)min_val from tab;
      COL1       COL2       COL3    MAX_VAL    MIN_VAL
---------- ---------- ---------- ---------- ----------
        12         23         45         45         12
        56         17         36         56         17




本文参考资料:https://www.cnblogs.com/tianchunming/p/5192863.html

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有