首页 > 数据库 > mysql教程 > 如何在 MySQL UPDATE 查询中使用 LIMIT?

如何在 MySQL UPDATE 查询中使用 LIMIT?

Barbara Streisand
发布: 2024-11-30 17:31:12
原创
631 人浏览过

How to Use LIMIT in MySQL UPDATE Queries?

在 MySQL 中更新具有限制的行

在 MySQL 中,在 UPDATE 查询中使用 LIMIT 子句可能会造成混淆。在这里,我们详细解释其用法并解决相关问题。

使用 LIMIT 查询

要更新特定范围内的行,可以使用以下语法:

UPDATE table_name SET column_name = value
WHERE id IN (
    SELECT id FROM (
        SELECT id FROM table_name
        ORDER BY id ASC
        LIMIT start_row, row_count
    ) tmp
)
登录后复制

例如,要将行从 1001 更新到 1100, use:

UPDATE table_name SET p_id = 3
WHERE id IN (
    SELECT id FROM (
        SELECT id FROM table_name
        ORDER BY id ASC
        LIMIT 1001, 1000
    ) tmp
)
登录后复制

无效查询

您提供的查询 (UPDATE oltp_db.users SET p_id = 3 LIMIT 1001, 1000) 无效,因为无法使用 LIMIT直接在 UPDATE 语句中。它必须在子查询中应用,如上所示。

更新空值

如果 p_id 列包含 NULL 值,则以下查询将不起作用:

UPDATE `oltp_db`.`users` SET p_id = 3 WHERE p_id = null
登录后复制

要更新 NULL 值,可以使用 IS NULL状况:

UPDATE `oltp_db`.`users` SET p_id = 3 WHERE p_id IS NULL
登录后复制

以上是如何在 MySQL UPDATE 查询中使用 LIMIT?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板