2017-01-25 20 views
0

私は次のクエリがありますMySQLのマニュアルのid増分

SET @count = 0; 
UPDATE `batch_b` 
SET `batch_b`.`printid` = @count:[email protected]+1; 
ORDER BY postal_zone, country, airmail,company; 

PrintIDこれは、主キーではない0のデフォルト値を持つ整数です。 クエリを実行すると、1回の増分値を与えることが期待されますが、NULLを返しただけです。

+0

可能な重複http://stackoverflow.com/questions/33821807/auto-increment-a-non-identity-column-in-sql -server) –

+0

あなたはこれが必要ですか? 'SET @count:= 0;'?あなたのクエリは、(この可能性のあるタイプミス以外の)うまくいくように見えます。 –

+0

'Set @count = 0;'を 'Declare @count int = 0;に変更する必要があると思います。 – Edward

答えて

1

括弧で増分値をラップした後に機能しました。ありがとうございました!

Set @counter := 0; 
UPDATE `batch_b` 
SET `batch_b`.`printid` = (@counter:[email protected]+1) 
ORDER BY postal_zone, country, airmail,company; 
[自動インクリメントSQLサーバーでの非ID列](の