2011-03-03 11 views
5

मैं MySQL v5.0.45 का उपयोग कर रहा हूं और आईडी आईडी के बावजूद किसी तालिका में nth पंक्ति को हटाने का प्रयास कर रहा हूं। मैं अपने वेब विकास परियोजना, जहां मैं की स्थापना में एकीकृत करने से पहले PHP में एक प्रोटोटाइप की स्थापना की मेरी डेटाबेस में निम्नलिखित:एनएचटी पंक्ति को हटाकर mysql

CREATE TABLE prototype_1 (id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id), name varchar(30)); 

INSERT INTO prototype_1 (name) VALUES ('A'); 
INSERT INTO prototype_1 (name) VALUES ('B'); 
INSERT INTO prototype_1 (name) VALUES ('C'); 

सरल पर्याप्त! अब मैं 'limit' उपयोग करने की कोशिश, लेकिन मैं निम्नलिखित त्रुटि मिलती है:

"त्रुटि 1235 (42000): MySQL का यह संस्करण अभी तक का समर्थन नहीं करता 'limit & में/सभी/किसी भी/कुछ सबक्वेरी'"

अब मैं समझता हूं कि आप उप-सामानों में LIMIT का उपयोग नहीं कर सकते हैं, हालांकि, क्या कोई काम नहीं है?

मैं वें पंक्ति का चयन कर सकते हैं और यह अच्छी तरह से प्रदर्शित निम्नलिखित के साथ:

SELECT * FROM prototype_1 LIMIT 1,1; 

इस प्रकार 'बी' लौटने लेकिन मैं क्यों नहीं हटा सकते हैं !?

+0

की तरह एक छोटे से चाल की जरूरत है आप "पर ध्यान दिए बिना अपने आईडी नंबर की" क्या मतलब है? –

उत्तर

3

आप इस

delete from prototype_1 where id = (select id from (select id from prototype_1 order by id limit 1,1) as t) 
+0

मैं इस समस्या के आसपास काम करने पर बहुत सारे दस्तावेज नहीं ढूंढ पाया और यह पूरी तरह से काम किया! आपको बहुत - बहुत धन्यवाद! : डी – Riyan

+0

आपका स्वागत है। :) –

+0

अद्भुत, बस अद्भुत! एक बात जो मैं अनुरोध करूंगा वह यह है कि आप अपने उत्तर में वर्तनी करते हैं कि 'प्रोटोटाइप_1' तालिका का नाम है, और तालिका में "nth" पंक्ति है। –

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