0

imgデータベースで呼び出されたテーブルのフィールドにテキスト値を挿入しようとcounterimgしています。これで、テーブルは次のようになります。

id  img
1   0.jpg
2   1.jpg
3   3.jpg
4   4.jpg
5   5.jpg
6   6.jpg
7   7.jpg
8   8.jpg
9   9.jpg
10  0.jpg
11  1.jpg
12  2.jpg
13  3.jpg
...

私がやりたいことは、たとえば id = 30 から 40 の間の 10 個の値ごとに、img 値が 0.jpg から 9.jpg になるように追加し続けることです。これは id = 999 まで続くはずです。

MySQL で、または MySQL クエリを使用して (ある種のループで) どうすればよいですか?

4

2 に答える 2

1

モジュロ演算 ( %)を使用できます。あなたの場合、モジュロ10になります:

0 % 10 = 0
9 % 10 = 9
10 % 10 = 0
19 % 10 = 9
...

たとえば、あなたの場合の典型的なアルゴリズムは次のようになります。

for each i in [0 999] do
    id  <- i
    img <- (i % 10) + ".jpg"
    save (id, img)
于 2012-05-07T09:41:40.750 に答える
0

これを参照して、要件に合わせてクエリをカスタマイズしてください。

http://forums.mysql.com/read.php?10,89453

于 2012-05-07T09:44:50.607 に答える