当前位置: 首页 > news >正文

oracle将select作为字段查询

在Oracle中,如果你想将一个SELECT语句作为字段的值,你可以使用子查询或者使用WITH子句(也称为公用表表达式CTE)。以下是两种方法的示例:

方法1:使用子查询

语法如下:

SELECTcolumn1,(SELECT COUNT(*) FROM another_table WHERE another_table.column2 = table1.column1) AS count_value
FROMtable1;

实例:

SELECT
(SELECT a.companycnameFROM ggcompany aWHERE a.companycode = SUBSTR(mm.companycode, 0, 4)) 二级机构,(SELECT a.companycnameFROM ggcompany aWHERE a.companycode = SUBSTR(mm.companycode, 0, 6)) 三级机构,(SELECT a.companycnameFROM ggcompany aWHERE a.companycode = mm.companycode) 四级机构,mm.policyno 保单号from gppolicyplandetail mm

方法2:使用WITH子句(CTE)

语法:

WITH count_cte AS (SELECT column2, COUNT(*) AS count_valueFROM another_tableGROUP BY column2
)
SELECTt1.column1,count_cte.count_value
FROMtable1 t1LEFT JOIN count_cte ON count_cte.column2 = t1.column1;

解释:count_cte 是中间表,命名随意,要是需要多个中间表,可以用逗号连接。

实例:

WITHw AS (SELECTstatdate          ,classname         ,riskname          ,cityname          ,policyno          ,registno          ,claimno           ,damagedate        ,reportdate        ,claimdate         ,underwriteenddate ,endcasedate       ,rgstcncldate      ,canceldate        ,firstestloss      ,unsettledpaidbegin,unsettledpaidend  ,settled           ,sumpaid           ,reportlossfee     ,canceldatelossFROMr_lsts_jsreportlistWHEREstatdate = DATE '2022-03-31')     ,ff AS (SELECTstatdate          ,classname         ,riskname          ,cityname          ,policyno          ,registno          ,claimno           ,damagedate        ,reportdate        ,claimdate         ,underwriteenddate ,endcasedate       ,rgstcncldate      ,canceldate        ,firstestloss      ,unsettledpaidbegin,unsettledpaidend  ,settled           ,sumpaid           ,reportlossfee     ,canceldatelossFROMr_lsts_jsreportlistWHEREstatdate = DATE '2024-09-30')
SELECTff.statdate 统计日期,ff.classname 险类 ,ff.riskname 险种  ,ff.cityname 机构  ,w.settled
FROMffLEFT JOIN w ON ff.riskname = w.riskname ANDff.policyno = w.policyno ANDff.registno = w.registno ANDff.claimno = w.claimno
         解释:W和FF都是临时表,中间用逗号隔开,中间结束需要有select ,select前不能有逗号。
http://www.lryc.cn/news/494030.html

相关文章:

  • Java数据结构和算法相关面试题
  • 网络安全风险评估
  • ADAM优化算法与学习率调度器:深度学习中的关键工具
  • 岛屿数量C++11新特性
  • Git 快速入门:全面了解与安装步骤
  • 基于域自适应的双光融合
  • 迭代器模式 (Iterator Pattern)
  • 039集——渐变色之:CAD中画彩虹()(CAD—C#二次开发入门)
  • 如何将 GitHub 私有仓库(private)转换为公共仓库(public)
  • C++11 右值引用
  • WPS表格学习计划与策略
  • Android 引入 proto 项目及使用方法
  • VSOMEIP主要流程的时序
  • 右值引用和移动语义:
  • 经纬高LLA转地心地固ECEF坐标,公式,代码
  • VUE前端实现天爱滑块验证码--详细教程
  • 【链表】【删除节点】【刷题笔记】【灵神题单】
  • springboot339javaweb的新能源充电系统pf(论文+源码)_kaic
  • 【嵌入式——QT】QT制作安装包
  • python的文件操作练习
  • jQuery九宫格抽奖,php处理抽奖信息
  • 2024年一级建造师考试成绩,即将公布!
  • M4V 视频是一种什么格式?如何把 M4V 转为 MP4 格式?
  • Leetcode 每日一题 104.二叉树的最大深度
  • 文件上传漏洞:你的网站安全吗?
  • AWS账号提额
  • 电子应用设计方案-29:智能云炒菜系统方案设计
  • 腾讯rapidJson使用例子
  • UE5_CommonUI简单使用(2)
  • 探讨播客的生态系统