oracle 怎样将select 语句的查询结果作为另一个select 语句where 后面的查询条件

selectsysdatefromdualwhere(selectcasewhen(zys-bjs=zys)then'1=1andxb=''1'''when(abs(zy... select sysdate
from dual
where (select case
when (zys - bjs = zys) then
'1=1 and xb=''1'''
when (abs(zys - bjs) = bjs) then
'2=2 and xb=''1'''
else
'3=3 and xb=''1'''
end
from (select (select count(*)
from jx0503tzd
where jx0404id = xk.jx0504id) zys,
(select count(*)
from jx0503tzdbj
where jx0404id = xk.jx0504id) bjs
from jx0504 xk
where xk.jx0504id = '201120122000571'))
类似这样的,当然这样是不行的
展开
 我来答
百度网友faadf46
高粉答主

2020-04-27 · 说的都是干货,快来关注
知道答主
回答量:4556
采纳率:0%
帮助的人:74.5万
展开全部

1、首先我们先看一下我们的这个表信息。

2、接着我们使用创建查询的方法,来测试sql。

3、select的where的条件查询格式:select 【所选字段列表】 from 【数据表名】 where 条件表达式。

4、上面那个是查询表中年龄大于10的数据。

5、当然如果你有多个条件也可以写,多个条件表达式。要是用and进行连接。and就是并且的意思。

micro0369
推荐于2017-10-10 · TA获得超过1.2万个赞
知道大有可为答主
回答量:9250
采纳率:85%
帮助的人:4041万
展开全部
你这样太复杂了。

无非就是下面几种:
1. exists

where exists (select 1 from abc where xxx)

2. in

where xxx in (select xxx from abc where ...)

3. = (只能返回一行)
where xxx = (select xxx from abc where ...)

当然,子查询中是可以使用外部的表。

比如
select * from a where exists (select 1 from b where a.id = b.id)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小小的误会
2012-08-28
知道答主
回答量:3
采纳率:0%
帮助的人:5.5万
展开全部
你后面的select 语句得到的是,一个字段值还是,一个table?这两个方式不一样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0319a0e
2015-09-22 · TA获得超过2.2万个赞
知道小有建树答主
回答量:2080
采纳率:85%
帮助的人:1151万
展开全部
select * from table_a
where (c,b) in (select c1,c2 from table_b )
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
缘恋清
2012-08-28
知道答主
回答量:54
采纳率:0%
帮助的人:13.2万
展开全部
子查询
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式