mysql

2017-06-24 4 views
6

में गतिशील रूप से फ़ील्ड ऑर्डर बदलना मेरी प्रोजेक्ट में मैंने डेटाबेस में कई बदलाव किए हैं और कुछ समय में मुझे अपने डेटाबेस में कुछ टेबल को ऑर्डर देने की आवश्यकता है। तो, मैं चाहता हूँ। मेरे पास निम्नलिखित टेबल है।mysql

id  name  address  order 
1  vijay mumbai  2 
3  ram  delhi  4 
4  ravi  pune  5 
5  rutul surat  8 
9  vipul agra  11 

और मैं mysql क्वेरी से इसे अपडेट करना ... जैसे

id  name  address  order 
1  vijay mumbai  0 
3  ram  delhi  1 
4  ravi  pune  2 
5  rutul surat  3 
9  vipul agra  4 

इसलिए मैं चाहता हूँ के अलावा एक और पर और पर ... कैसे 0 से अद्यतन करने के लिए अपने आदेश क्षेत्र है ऐसा करने के लिए मुझे कोई जानकारी नहीं है ... मैं कोशिश करता हूं लेकिन मैं समाधान के नजदीक भी नहीं हूं। उसको कैसे करे? क्रिप्या मेरि सहायता करे।

+0

आप बेशक पंक्ति संख्या –

उत्तर

4

आप निम्न क्वेरी का उपयोग कर सकते हैं:

SET @orderid = -1;  
update yourTableName set `order` = (@orderid:[email protected]+1) 
order by id asc 

संपादित करें:

CodeIgniter में आप निम्नलिखित की तरह कर सकते हैं:

$this->db->query("SET @orderid = -1"); 
$this->db->query("update table_name set `order` = (@orderid:[email protected]+1) order by id asc"); 
+0

का उपयोग कर का उपयोग करते हुए 'कोशिश कर सकते हैं एक क्वेरी में ऑर्डर 'mysql खांसी बना देगा :-) '\' ऑर्डर \ '' का उपयोग करना बेहतर होगा .... –

+0

यूप, सी से बचने के लिए भी सलाह दी जाती है ** mysql का डिफ़ॉल्ट नाम ** डिफ़ॉल्ट कुंजी शब्द –

+0

हाँ, यह काम कर रहा है ... क्या आपको पता है कि कोडइग्निटर फ़ंक्शन पर इसे कैसे कार्यान्वित किया जाए? –

 संबंधित मुद्दे