相关文章推荐
豪爽的热水瓶  ·  How to export a Hive ...·  3 月前    · 
留胡子的鼠标  ·  MySQL字段等值查询时,尾部有空格也能匹配 ...·  1 月前    · 
精明的蘑菇  ·  老油田破题高质量发展 ...·  1 年前    · 
买醉的海豚  ·  驾驭哥布林的黑兽团长不会梦到萌王_百度百科·  1 年前    · 
逃跑的槟榔  ·  王沪宁会见纪念中国伊斯兰教协会成立70周年座 ...·  1 年前    · 
老实的梨子  ·  CSS之IE浏览器的hasLayout,IE ...·  1 年前    · 
追风的机器猫  ·  懂车老王的个人空间-懂车老王个人主页-哔哩哔哩视频·  1 年前    · 
Code  ›  MySQL :: MySQL 8.0 Reference Manual :: 13.2.15.10 Subquery Errors
mysql select
https://dev.mysql.com/doc/refman/8.0/en/subquery-errors.html
礼貌的高山
2 年前
Statements That Cause an Implicit Commit
SAVEPOINT, ROLLBACK TO SAVEPOINT, and RELEASE SAVEPOINT Statements
LOCK INSTANCE FOR BACKUP and UNLOCK INSTANCE Statements
LOCK TABLES and UNLOCK TABLES Statements
SET TRANSACTION Statement
XA Transactions
XA Transaction SQL Statements
XA Transaction States
Restrictions on XA Transactions
CREATE FUNCTION Statement for Loadable Functions
DROP FUNCTION Statement for Loadable Functions
INSTALL COMPONENT Statement
INSTALL PLUGIN Statement
UNINSTALL COMPONENT Statement
UNINSTALL PLUGIN Statement

ERROR 1235 (ER_NOT_SUPPORTED_YET)
SQLSTATE = 42000
Message = "This version of MySQL doesn't yet support
'LIMIT & IN/ALL/ANY/SOME subquery'"

This means that MySQL does not support statements like the following:

SELECT * FROM t1 WHERE s1 IN (SELECT s2 FROM t2 ORDER BY s1 LIMIT 1)
  • Incorrect number of columns from subquery:

    ERROR 1241 (ER_OPERAND_COL)
    SQLSTATE = 21000
    Message = "Operand should contain 1 column(s)"

    This error occurs in cases like this:

    SELECT (SELECT column1, column2 FROM t2) FROM t1;

    You may use a subquery that returns multiple columns, if the purpose is row comparison. In other contexts, the subquery must be a scalar operand. See Section 13.2.15.5, “Row Subqueries” . Incorrect number of rows from subquery:

    ERROR 1242 (ER_SUBSELECT_NO_1_ROW)
    SQLSTATE = 21000
    Message = "Subquery returns more than 1 row"

    This error occurs for statements where the subquery must return at most one row but returns multiple rows. Consider the following example:

    SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2);

    If SELECT column1 FROM t2 returns just one row, the previous query works. If the subquery returns more than one row, error 1242 occurs. In that case, the query should be rewritten as:

    SELECT * FROM t1 WHERE column1 = ANY (SELECT column1 FROM t2);
  • Incorrectly used table in subquery:

    Error 1093 (ER_UPDATE_TABLE_USED)
    SQLSTATE = HY000
    Message = "You can't specify target table 'x'
    for update in FROM clause"

    This error occurs in cases such as the following, which attempts to modify a table and select from the same table in the subquery:

    UPDATE t1 SET column2 = (SELECT MAX(column1) FROM t1);

    You can use a common table expression or derived table to work around this. See Section 13.2.15.12, “Restrictions on Subqueries” . In MySQL 8.0.19 and later, all of the errors described in this section also apply when using TABLE in subqueries. For transactional storage engines, the failure of a subquery causes the entire statement to fail. For nontransactional storage engines, data modifications made before the error was encountered are preserved.

  •  
    推荐文章
    豪爽的热水瓶  ·  How to export a Hive table into a CSV file? - Stack Overflow
    3 月前
    留胡子的鼠标  ·  MySQL字段等值查询时,尾部有空格也能匹配上的坑 - waterystone
    1 月前
    精明的蘑菇  ·  老油田破题高质量发展 -国务院国有资产监督管理委员会
    1 年前
    买醉的海豚  ·  驾驭哥布林的黑兽团长不会梦到萌王_百度百科
    1 年前
    逃跑的槟榔  ·  王沪宁会见纪念中国伊斯兰教协会成立70周年座谈会与会代表
    1 年前
    老实的梨子  ·  CSS之IE浏览器的hasLayout,IE低版本的bug根源 - 风雨后见彩虹 - 博客园
    1 年前
    追风的机器猫  ·  懂车老王的个人空间-懂车老王个人主页-哔哩哔哩视频
    1 年前
    今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
    删除内容请联系邮箱 2879853325@qq.com
    Code - 代码工具平台
    © 2024 ~ 沪ICP备11025650号