出现java.sql.SQLException: Subquery returns more than 1 row错误的原因,解决方法
今天在使用嵌套查询语句时出现这个错误,也很好解决,在这里记录一下。
例如这个语句:
<select id="findSongBySheetId" resultType="com.jhb.crash_music.pojo.Song" parameterType="int">select * from song_tablewhere song_id =(select songlist_songId from songlist_table where songlist_sheetId=#{sheet_id})
</select>
我是想通过多个sheet_id去查询一个song_id列表,然后通过song_id这个列表再来查询相应的song,结果出现报错:java.sql.SQLException: Subquery returns more than 1 row,查看报错信息显示我查询出了超过一行的行数。
因为当用where song_id=**时,这个等于对应的只能是一组,当你想多组嵌套查询时,需要将=改成in:
<select id="findSongBySheetId" resultType="com.jhb.crash_music.pojo.Song" parameterType="int">select * from song_tablewhere song_id in (select songlist_songId from songlist_table where songlist_sheetId=#{sheet_id})
</select>
之后进行运行,没有报错,查询结果也正常。
总结:
在一组查询条件时,用等于 = ;
在多组查询条件列表时,用 in ;
出现java.sql.SQLException: Subquery returns more than 1 row错误的原因,解决方法相关推荐
- java.sql.SQLException: Subquery returns more than 1 row
java.sql.SQLException: Subquery returns more than 1 row错误:你的子查询中返回了多条数据 一.场景:子查询出现多个 结果: 二.解决方法 在重复写 ...
- java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents 解决方法
转载自https://blog.csdn.net/weixin_37577564/article/details/80329775 在JDBC使用的时候有时候会出现java.sql.SQLExcept ...
- Java SQLException: Subquery returns more than 1 row 问题解决
问题描述: Cause: java.sql.SQLException: Subquery returns more than 1 row 问题分析: 1.子查询本来只能返回一条数据给username字 ...
- 使用DriverManager动态加载JDBC驱动时,报:java.sql.SQLException: No suitable driver found for xxxx 错误
参考文章: yanbin.blog - 自定义类加载器动态加载 JDBC 驱动 项目场景: 使用DriverManager动态加载JDBC驱动时,报:java.sql.SQLException: No ...
- java.sql.SQLException: Incorrect string value: ‘\xF0\x9F\x90\xB1\xF0\x9F...‘解决
mysql 字符存在表情包 java.sql.SQLException: Incorrect string value: '\xF0\x9F\x90\xB1\xF0\x9F-' for column ...
- mysql错误18456_【问题解决】SQL2008 SQL Server身份认证方式登录失败(错误18456)解决方法图解...
今天同事电脑本地数据库,用SQL Server身份认证登录不了,后来解决了,突然想起自己曾经也遇到过这个问题,所以还是在这里记录下. 问题报错截图如下: 解决方法步骤截图如下: 1.打开本地数据库-- ...
- java.sql.sqlexception: 无效的名称模式:_PSQLException:错误:关系&ldquo; TABLE_NAME&rdquo;不存在...
我试图在PostgreSQL 8.4.2 DB上运行hibernate.每当我尝试运行一个简单的java代码时: List users = service.findAllUsers(); 我收到以下错 ...
- 【解决报错】java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
IDE:IntelliJ IDEA Ultimate 2019.3 (我用的是学生版,只要大学邮箱能用就可以的) 报错信息全文附在最后.其中关键的信息就是: Root Cause java.sql.S ...
- [问题] springboot2报错 Exception during pool initialization. java.sql.SQLException
用springboot配置文件连接数据库: yaml配置如下 报错类型: 2021-07-29 15:53:01.153 ERROR 12240 - [ restartedMain] com.zaxx ...
最新文章
- javascript:面向对象编程基础:继承
- HTML5如何学?学HTML5要注意什么?
- elementui可编辑单元格_关于遥感解译点室内解译编号的读取编辑方法
- Win7旗舰版系统如何设置定时关机
- UVA10317- Equating Equations(回溯+剪枝)
- officescan 不输入密码卸载
- axure文件如何加密_Axure发布到AxShare的加密与非加密方案 | 人人都是产品经理
- TCP 和 UDP 有什么区别?
- WPF高性能绘图之DrawingCanvas、DrawingVisual、Button的同时使用
- poi操作word,写入一个图片,并且设置其大小,以及图片和base64之间的互相转换,以及表格内容替换和插入
- PS问题汇总2017
- android5.1修改默认锁屏方式(去除锁屏)
- 哈哈!12万行代码堆出来个「蔡徐坤」
- MySQL(一) -----启动与关闭
- 中国FW贝尔探头市场现状研究分析与发展前景预测报告(2022)
- qualcomm的camera马达驱动代码分析
- vivado工程打包
- 名片管理系统java,[作业]JavaEE框架开发技术之名片管理系统
- 27岁到来之际,我在阿里实现了年薪40W+的小目标
- 没有目标的人是可悲的-2006