【问题标题】:MYSQL/MariaDB - This version of MariaDB doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'MYSQL/MariaDB - 这个版本的 MariaDB 还不支持“LIMIT & IN/ALL/ANY/SOME 子查询”
【发布时间】:2022-07-22 18:14:53
【问题描述】:

我尝试将我的数据库 python 脚本从 SQLite 转移到 MariaDB。

这是我使用的代码。

UPDATE users SET x = (%s) WHERE id IN (select id FROM users WHERE user_id = (%s) ORDER BY id DESC LIMIT 1)

我收到了这个错误 mysql.connector.errors.ProgrammingError: 1235 (42000): This version of MariaDB doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

我该如何解决这个错误?

【问题讨论】:

  • 欢迎来到 S.O.请发布您的 MariaDB 版本
  • 使用多表 UPDATE 语法。

标签: python mysql mariadb


【解决方案1】:
UPDATE users 
NATURAL JOIN ( SELECT id 
               FROM users 
               WHERE user_id = (%s) 
               ORDER BY id DESC LIMIT 1 ) criteria
SET x = (%s);

【讨论】:

    猜你喜欢
    • 2017-11-14
    • 1970-01-01
    • 2015-03-07
    • 2013-07-27
    • 1970-01-01
    • 2013-10-21
    相关资源
    最近更新 更多