首頁 >資料庫 >mysql教程 >如何在 MySQL UPDATE 查詢中使用 LIMIT?

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

Barbara Streisand
Barbara Streisand原創
2024-11-30 17:31:12592瀏覽

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) 直接使用在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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn