Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

SQL:CẬP NHẬT với INNER JOIN với LIMIT

Bạn không thể.

Theo tài liệu MySQL cho CẬP NHẬT :

For the multiple-table syntax, UPDATE updates rows in each table named in
table_references that satisfy the conditions. In this case, ORDER BY and LIMIT
cannot be used. 

CẬP NHẬT 1

UPDATE  table1 a
        INNER JOIN
        (
            SELECT  id 
            FROM    table1 A
                    INNER JOIN table2 B 
                        ON A.type = B.typeName
            WHERE   A.status IN ('Finished', 'Exception', 'Query') AND 
                    A.date BETWEEN '2013-01-01' AND '2013-01-31' AND 
                    A.code IN ('ex1','ex2','ex3') AND 
                    A.closed = 0 AND 
                    B.order = 'Non-Order' AND 
                    A.userName = 'test' 
            LIMIT   3
        ) tmp ON a.ID = tmp.ID
SET     a.closed = 1, 
        a.sample = 1


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tạo ra nhiều giá trị có cùng tên cột trong cùng một bảng

  2. Giao dịch MySQL nguyên tử trong Anorm

  3. MySQL DAYOFWEEK () - tuần của tôi bắt đầu từ thứ hai

  4. Dữ liệu MySql bị cắt ngắn cho cột 'nâng cao' ở hàng 1

  5. Làm thế nào để tạo ra các lần đọc ảo?