sql 子查询返回的值不止一个怎么解决?

例如:select*fromT1whereAin(selectxfromt2wherebin(1,2,3,4))对于这样的查询怎么解决。... 例如:select * from T1 where A in(select x from t2 where b in(1,2,3,4)) 对于这样的查询怎么解决。 展开
 我来答
四舍五不入6
高粉答主

2020-03-07 · 醉心答题,欢迎关注
知道答主
回答量:147
采纳率:100%
帮助的人:2.1万
展开全部

解决方法如下:

返回一个值:返回多个说明数据库中满足用户查询条件的记录有多个,要返回一个就说明用户的查询条件不够,再加条件控制就行了,比如在语句末尾再加 and ***=‘***’;

如果用户问的是如何在后台程序中接收的话,用List可以,一个节点接收Result的一行值,读取的时候遍历List就行了。

扩展资料:

删除表

drop table tabname--这是将表连同表中信息一起删除但是日志文件中会有记录

删除信息

delete from table_name-这是将表中信息删除但是会保留这个表

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1[separator]

参考资料来源:百度百科-sql语句

参考资料来源:百度百科-SQL语句大全

海云的T
2014-11-10 · 超过47用户采纳过TA的回答
知道答主
回答量:84
采纳率:0%
帮助的人:113万
展开全部
朋友,as t是给表一个别名,方便在运行时准确找到这个字段是哪张表的字段(oracle中可以不用别名,但是要在字段前加表名.(不带schema),也是为了找到对应的字段),你这条语句中,多次使用同一张表,如果不用别名,那数据库怎么知道哪个字段是哪张表的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fanqiezz11
2014-11-10 · TA获得超过777个赞
知道小有建树答主
回答量:369
采纳率:0%
帮助的人:253万
展开全部
你是要返回一个值?返回多个说明数据库中满足你查询条件的记录有多个,要返回一个就说明你的查询条件不够,再加条件控制就行了,比如在语句末尾再加 and ***=‘***’;

如果你问的是如何在后台程序中接收的话,用List可以,一个节点接收Result的一行值,读取的时候遍历List就行了。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
江城Spring
2014-11-10 · TA获得超过1202个赞
知道小有建树答主
回答量:763
采纳率:0%
帮助的人:349万
展开全部
可能是 in 后面的 查出来的X,不止一条记录,如果有多条记录,而希望得到一条记录,建议用关键字distinct 过滤重复记录。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gy93108083
2014-11-10 · TA获得超过283个赞
知道小有建树答主
回答量:665
采纳率:50%
帮助的人:271万
展开全部
select * from T1 where
exists(select top 1 * from t2 where b in(1,2,3,4) and t2.x=T1.A)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式