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

आइटम को स्थानांतरित करने के लिए एक सॉर्टिंग इंडेक्स कॉलम अपडेट करें

आपको इसे एक ही प्रश्न में करने में सक्षम होना चाहिए:UPDATE foo SET सॉर्ट_इंडेक्स =सॉर्ट_इंडेक्स + 1 की तर्ज पर कुछ जहां bar_id ==b और सॉर्ट_इंडेक्स =s2 , जहां b bar_id है स्थानांतरित की जाने वाली पंक्ति का, s1 वर्तमान sort_index है उस पंक्ति का, और s2 सॉर्ट_इंडेक्स है आप इसे स्थानांतरित करना चाहते हैं। फिर, आप बस sort_index . को बदल देंगे पंक्ति का।

आप शायद लेनदेन के अंदर दो प्रश्न करना चाहेंगे। साथ ही, अगर आप sort_index . पर एक इंडेक्स बनाते हैं, तो यह चीजों को गति दे सकता है कुछ इस तरह का उपयोग करना ।

(वैसे, यहाँ मैं मान रहा हूँ कि आप डुप्लिकेट sort_index नहीं चाहते हैं किसी दिए गए bar_id . के भीतर मान , और पंक्तियों के सापेक्ष क्रम को स्पष्ट रूप से छोड़कर कभी नहीं बदला जाना चाहिए। यदि आपको इसकी आवश्यकता नहीं है, तो समाधान और भी आसान है।)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एसक्यूएल:रंग-तालिका से रंगों को खोजने योग्य बनाएं

  2. डीबी स्कीमा परिवर्तनों को ट्रैक करने के लिए तंत्र

  3. बटन क्लिक पर डिव अपडेट कर रहा है, जब बटन दूसरे बटन पर क्लिक करके उत्पन्न होता है

  4. मैं कैसे पता लगा सकता हूं कि कौन सा लेनदेन तालिका मेटाडेटा लॉक स्थिति की प्रतीक्षा कर रहा है?

  5. लौटाई गई MySQL क्वेरी में एक क्रमांकित सूची कॉलम जोड़ें