Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Menyewa pekerjaan (pembaruan atom dan dapatkan) dari database MySQL

Solusi saya dengan sedikit trik:pertama:Anda harus menggunakan subselect sehingga UPDATE bukan sekarang tabel yang sama kedua:Anda harus menginisialisasi @id dengan "(SELECT @id:=0)" jika tidak ditemukan baris yang mereka kembalikan nilai yang ditetapkan terakhir. Di sini Anda juga dapat menentukan apakah mereka mengembalikan 0 atau '' ketika tidak ada hasil yang ditemukan.

UPDATE jobs SET lease=NOW() WHERE id =
  ( SELECT * FROM 
     ( SELECT @id:=id  FROM jobs,(SELECT @id:=0) AS tmp_id
       WHERE TIMESTAMPDIFF(HOUR,lease,NOW())>=8 
       AND NOT complete ORDER BY priority LIMIT 1
     ) AS tmp
  );


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kueri penjumlahan menggunakan fungsi groupBy() di laravel

  2. Bagaimana cara menyimpan 3 daftar tombol radio di database mysql dalam satu kolom, baris yang berbeda?

  3. sql query untuk memilih record yang memiliki id yang sama tetapi nilai yang berbeda dalam dua kolom

  4. MySQL, Gabungkan dua kolom

  5. Desimal VS Int di MySQL?