MySQL

2012-01-14 6 views
18

में अनुक्रमिक संख्या डालें मैंने एक तालिका में एक खाली कॉलम जोड़ा और अब मैं अनुक्रमिक संख्याओं को अपनी पंक्तियों में सम्मिलित करना चाहता हूं। एसक्यूएल का उपयोग कर ऐसा करना संभव है? यदि आप प्रत्येक डालने कि आपMySQL

create table WithAutoInc(somID int AUTO_INCREMENT,somName_ char(100) ,primary key(somID)); 

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

+0

, पंक्ति संख्या के साथ उन्हें अद्यतन तुम इतनी –

उत्तर

42

भागो निम्नलिखित प्रश्नों yourField कॉलम में वृद्धि मूल्य के लिए:

SELECT @i:=0; 
UPDATE yourTable SET yourField = @i:[email protected]+1; 
+0

में उदाहरण मिल सकते हैं यह वास्तव में क्या है मैं जरुरत। धन्यवाद। – Rendicahya

+3

भगवान की मां, वह तेज़ था! : हे –

-1

इस auto increment कोशिश अब आप इस

insert into WithAutoInc (somName_) values ('presley'); 

कर सकते हैं परिणाम

है सम्मिलित करने के लिए

enter image description here

0

जैसा कि मैंने टिप्पणियों में कहा था, आप अपनी पंक्ति संख्या के साथ प्रत्येक पंक्ति को अपडेट कर सकते हैं,

यहां link है जो rownum it myqql की गणना करने के लिए है।

अलग तरीके से व्यक्त करने के लिए:

update player, 
     (select @rownum:[email protected]+1 ‘rank’, p.* 
     from player p, 
     (SELECT @rownum:=0) r 
     order by score desc) player1 
set thatColumn= rank 
where player.id = player1.id