Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

एक MySQL डेटाबेस से लीजिंग जॉब (परमाणु अद्यतन और प्राप्त करें)

एक छोटी सी चाल के साथ मेरा समाधान:पहला:आपको एक उप-चयन का उपयोग करना चाहिए ताकि अद्यतन अब एक ही तालिका में दूसरा न हो:आपको @id को "(SELECT @id:=0)" के साथ प्रारंभ करना होगा यदि कोई पंक्ति नहीं मिली तो वे वापस आते हैं अंतिम सेट मान। यहां आप यह भी निर्दिष्ट कर सकते हैं कि क्या कोई परिणाम नहीं मिलने पर वे 0 या '' लौटाते हैं।

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. MySQL और JDBC के साथ कई कथनों के साथ ट्रिगर पर सिंटेक्स अपवाद

  2. mysql में numpy array स्टोर करें

  3. मैं हाइबरनेट में शो टेबल कैसे दोहरा सकता हूं?

  4. फेसबुक user_id:big_int, int या string?

  5. एसक्यूएल स्टेटमेंट पर डायनेमिक टेबल का नाम