निम्नलिखित MySQL तालिका के साथ:MySQL आदेश में पंक्ति स्थान प्राप्त द्वारा
+-----------------------------+
+ id INT UNSIGNED +
+ name VARCHAR(100) +
+-----------------------------+
मैं एक एकल पंक्ति और तालिका में अन्य पंक्तियों के बीच अपनी स्थिति को कैसे चुन सकते हैं, जब name ASC
के अनुसार क्रमबद्ध। तो तालिका डेटा ऐसा दिखाई देता है, तो जब नाम के अनुसार क्रमबद्ध:
+-----------------------------+
+ id | name +
+-----------------------------+
+ 5 | Alpha +
+ 7 | Beta +
+ 3 | Delta +
+ ..... +
+ 1 | Zed +
+-----------------------------+
मैं Beta
पंक्ति उस पंक्ति की वर्तमान स्थिति हो रही है का चयन कैसे कर सकता है? परिणाम सेट मैं तलाश कर रहा हूँ कुछ इस तरह होगा:
+-----------------------------+
+ id | position | name +
+-----------------------------+
+ 7 | 2 | Beta +
+-----------------------------+
मैं एक साधारण SELECT * FROM tbl ORDER BY name ASC
तो कर सकते हैं PHP में पंक्तियों की गणना, लेकिन यह सिर्फ एक ही पंक्ति के लिए एक संभावित बड़े resultset लोड करने के लिए बेकार लगता है।
http://stackoverflow.com/questions/2520357/mysql-get-row-number-on- चयन करें –
[MySQL का संभावित डुप्लिकेट - पंक्ति संख्या प्राप्त करें चयन करें] (http://stackoverflow.com/questions/2520357/mysql-get-row-number-on-select) – jberryman