比如说 select * from A where A.B=(select * from C where C.Q='TRUE')
这样格式是否正确麻烦纠正下
谢谢!!
关于 select的条件语句where 后能否内嵌另一个 select语句??
答案:3 悬赏:0 手机版
解决时间 2021-04-09 00:39
- 提问者网友:星軌
- 2021-04-08 07:20
最佳答案
- 五星知识达人网友:轮獄道
- 2021-04-08 07:55
楼主对于查询条件是多条记录的时候用in就可可以了
select * from A where A.B in(select C.B from C where C.Q='TRUE')
你只需要选出C中所有满足C.Q=True并且和A中的B字段对于的字段值就可以了
如果不明白可以试一下,也可以Hi我
select * from A where A.B in(select C.B from C where C.Q='TRUE')
你只需要选出C中所有满足C.Q=True并且和A中的B字段对于的字段值就可以了
如果不明白可以试一下,也可以Hi我
全部回答
- 1楼网友:罪歌
- 2021-04-08 09:56
楼上的说的对,但是还有个错误,就是你的sql语句第一个where后面是判断a表达b字段等于c表里的一个字段集了(*即所有字段),怎么可能匹配的呢。应该把嵌套里的*改成你需要和b相等的那个字段名,比如需要a表达b字段和c表的d字段匹配,可以把你的sql语句改为: select * from a where a.b in (select c.d from c where c.q='true')
- 2楼网友:渡鹤影
- 2021-04-08 08:23
子查询是可以的。
简单的嵌套子查询:
SELECt *
FROM A
WHERe (A.B = (SELECt 具体字段
FROM C
WHERe (C.Q = 'TRUE')
))
这里可以使用相关子查询:
SELECt *
FROM A
WHERe (EXISTS (SELECt *
FROM C
WHERe (C.Q = 'TRUE')
AND (A.B = C.具体字段)
))
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯