2013-08-06 91 views
0

我在MySql中存儲了一個存儲過程,該用戶將傳入一個數字,例如'cr002149' 現在我想在選擇的語句中將每個記錄的數字增加1。我該怎麼做才能讓號碼變成cr002150,cr002151 ...Mysql如何增加序列號

謝謝。

+1

將cr保持總是相同的 – iJade

+0

你嘗試過什麼嗎? –

回答

3

你應該重新考慮你的數據結構,你可能會得到更好的運氣,只需使用auto_increment'd整數。無論哪種方式,這應該做的。

CONCAT('cr', 
    LPAD(
    CAST(
     SUBSTRING('cr002149',3) AS DECIMAL(0) 
    )+1, 
    6,'0' 
) 
); 

以上將返回cr002150。首先,我們使用SUBSTRING獲得002149,然後將字符串002149轉換爲整數並獲得2149。現在,我們增加這個來得到2150,然後用0填充它得到002150,最後我們連接左邊的cr