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

php में डिस्प्ले ऑर्डर फ़ील्ड को कैसे बनाए रखें?

आप प्रदर्शन के लिए बड़े मानों का उपयोग कर सकते हैं, जैसे कहें:

apple : 1 000 000

orange : 2 000 000

banana : 3 000 000

अब अगर मैं potato जोड़ना चाहता हूं स्थिति 2 (n=2) में मैं n (=> 2:नारंगी) और (n-1) (=> 1:सेब) की स्थिति लेता हूं और आलू की नई स्थिति प्राप्त करने के लिए उन्हें 2 से विभाजित करता हूं:

(1 000 000 + 2 000 000) / 2

=1 500 000

apple : 1 000 000

**potato : 1 500 000**

orange : 2 000 000

banana : 3 000 000

यह काफी लंबे समय तक काम करेगा, और अगर किसी बिंदु पर आपको लगता है कि आपने इस स्कीमा को समाप्त कर दिया है, तो भी आप सभी मानों को 1000 से गुणा कर सकते हैं।

आप निम्न मान (1, 2, 3, ...) का उपयोग करना जारी रख सकते हैं और उनके प्रकार को DOUBLE के रूप में परिभाषित कर सकते हैं , इसलिए 2 से विभाजित करते समय वे कभी नहीं टकराएंगे।

संपादित करें: केले को 1 स्थान पर रखने के बारे में :

सूत्र का उपयोग करना (n+(n-1))/2:

यहाँ n =1 (नई स्थिति)।

हमारा डेटा है:

apple : 1 000 000

potato : 1 500 000

orange : 2 000 000

banana : 3 000 000

(1 000000+(0))/2

=500 000

मैं केले के लिए 500,000 ऑर्डर देता हूं:

**banana : 500 000**

apple : 1 000 000

potato : 1 500 000

orange : 2 000 000

एक और समाधान:एक टेक्स्ट फ़ील्ड बनाएं जो एक इंडेक्सर हो और जिसमें सभी आईडी हों।

"1,2,3,4,5,6,7"

अब अगर मैं तत्व आईडी 8 को 3 और 4 के बीच रखना चाहता हूं, तो मुझे बस ",4," को ",8,4," से बदलना होगा।

हालांकि यह इंडेक्स n पर तत्व खोजने के लिए कंप्यूटिंग के मामले में अधिक जटिल है, इसलिए मैं व्यक्तिगत रूप से पहले समाधान का उपयोग करूंगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कॉलम के नाम से MySqlDataReader में NULL की जांच कैसे करें?

  2. पंक्तियों का मिलान क्यों होगा लेकिन mysql अपडेट स्टेटमेंट के साथ नहीं बदला जाएगा?

  3. डेटाबेस से चयनित मान के आधार पर डेटाबेस खोजें

  4. SQL SUM क्वेरी से कुछ फ़ील्ड को छोड़कर

  5. मैसकल कनेक्ट नहीं हो सकता - एक्सेस अस्वीकृत (पासवर्ड हाँ का उपयोग करके)