Mysql递归调用,报错:Subquery returns more than 1 row
在学习Mysql递归调用中,编写的 递归SQL 在 Navicat 中运行正常,但在 Java项目中 mapper.xml 文件中确报错:Subquery returns more than 1 row .
Mysql递归调用原文: Mysql递归查询 ,在根据这篇文章编写 Mysql递归SQL中,我遇到了以上的问题。
经过排查分析,我找到了问题。以下方的原始SQL为例,进行讲解。
-- 单纯使用SQL递归 查询父节点 含自己
SELECTT2.level_,T3.*
FROM(SELECT@CODE AS _code,( SELECT @CODE := parent_code FROM sys_region WHERE CODE = @CODE ) AS T1,@l := @l + 1 AS level_ FROMsys_region,( SELECT @CODE := '370171401000', @l := 0 ) T4 WHERE@CODE IS NOT NULL ) T2,sys_region T3
WHERET2._code = T3.CODE
ORDER BY level_;
这条SQL在 Navicat 中运行正常,没有报错。但我根据自己的工作项目修改SQL后,报了:Subquery returns more than 1 row 的错误,错误的原因我不是特别清楚,但进行如下处理后,问题就解决了。
SQL中 T1 子表中,应该这样写:( SELECT @CODE := parent_code FROM sys_region WHERE CODE = _code ) AS T1 ,把 WHERE 判断条件中的 @code 值替换成 _code值,
修改后的SQL如下所示:
-- 单纯使用SQL递归 查询父节点 含自己
SELECTT2.level_,T3.*
FROM(SELECT@CODE AS _code,( SELECT @CODE := parent_code FROM sys_region WHERE CODE = _code) AS T1,@l := @l + 1 AS level_ FROMsys_region,( SELECT @CODE := '370171401000', @l := 0 ) T4 WHERE@CODE IS NOT NULL ) T2,sys_region T3
WHERET2._code = T3.CODE
ORDER BY level_;
Mysql递归调用,报错:Subquery returns more than 1 row相关推荐
- Subquery returns more than 1 row
在mysql中做查询时 爆错 Subquery returns more than 1 row 百度了一下大概是子查询时返回来多行数据,基本上解决方案如出一辙 达不到我想要的效果 百度解决方案 一般为 ...
- mysql错误:Subquery returns more than 1 row
mysql错误:Subquery returns more than 1 row Mysql报错 基于两个表信息 解决方案: 方案一:limit 1 方案二:group_concat() 方案三: a ...
- mysql return more than 1 row_关于mysql错误:Subquery returns more than 1 row
[包含图片] mysql报错:SQLSTATE[21000]: Cardinality violation: 1242 Subquery returns more than 1 row 错误的意思是指 ...
- kettle使用mysql作为资源库报错 创建资源库时只有25张表,原本应该46张表。
kettle使用mysql作为资源库报错 创建资源库时只有25张表,原本应该46张表. 连用户表都没有 ,导致连 默认的 admin和guest都无法登陆自己的资源库!!!! 问题是 SQL语句里边使 ...
- mysql错误消息1_MySQL出错信息: Subquery returns more than 1 row及其解决方法
- 问题: 查询当"课程" 等于子查询里面的课程信息 - 出错指令: [Err] 1242 - Subquery returns more than 1 row 开始出错时的SQL ...
- IDEA 配置连接数据库报错 Server returns invalid timezone. Need to set ‘serverTimezone‘ property.
项目场景: 提示:使用IDEA连接数据库: 问题描述 提示:IDEA 配置连接数据库报错 Server returns invalid timezone. Need to set 'serverTim ...
- mysql安装教程博音网_RTSP视频平台EasyNVR使用mysql数据源启动报错unknow drivermysql优化...
原标题:RTSP视频平台EasyNVR使用mysql数据源启动报错unknow driver"mysql"优化 我们上一篇讲了TSINGSEE青犀视频开发的视频平台默认都是使用的s ...
- mysql表恢复报错binlog_mysql数据恢复,利用binlog2sql快速闪回
一.环境设置 1.mysql配置中首先要开启binlog,如没开启,在my.conf 下配置如下参数: server-id = 1 log_bin = /var/log/mysql/mysql-bin ...
- mysql source导入报错ERROR 1366的解决方法
mysql source导入报错ERROR 1366的解决方法 参考文章: (1)mysql source导入报错ERROR 1366的解决方法 (2)https://www.cnblogs.com/ ...
最新文章
- highcharts 绘制图标的JAVASCRIPT 类库 收藏
- Test435678
- Linux系统编程(一)
- t–sql pl–sql_糟糕SQL查询设计– SQL查询性能的杀手–基本知识
- Fedora Linux基本配置
- Apache 模块 mod_cache应用
- OpenCms8.5 安装
- Gerry-自定义报表组件
- mac 剪切移动文件
- 官网稳定版微信小程序下载地址
- Charles 使用总结
- 天融信AlphaFuzzer测试工具 使用教程
- 手机号号码段及js验证
- html贝塞尔曲线在线,贝塞尔曲线的一些事情_html/css_WEB-ITnose
- IOS 一些小知识点整理
- CSS特效 操作方法
- 【Python 爬虫教程】付费代理IP与免费代理IP的区别是什么
- 红米k30鸿蒙系统,带你了解,红米K30至尊纪念版,强悍的拍照配置
- 详解|一级建造师考试报名流程有哪些?
- 照片日历制作软件服务器端,#原创新人#99%完美的全平台日历解决方案
热门文章
- java毕业设计旧物置换网站mybatis+源码+调试部署+系统+数据库+lw
- uClinux 内核编译常见错误及解决方法(zt)
- C语言小程序——调用系统应用
- 远程连接oracle01017,連接Oracle遠程數據庫錯誤:ORA-12541,ORA-12514,ORA-01017的解決方法!...
- 【百度网盘安装不了怎么办】
- ubuntu 安装 Qt5
- 原来阿里级别是这么定的。。。
- python教程菜鸟教程学习路线
- OpenHarmony之系统功能框架分析
- 64位和32位JDK 1.8下载和环境变量配置