select文を使用してあるテーブルから別のテーブルにレコードを挿入しています。に挿入されているテーブルには、更新ごとに1ずつインクリメントする必要のある新しいフィールドがありますが、更新ごとにレコードのグループごとに番号を再入力する必要があるため、自動インクリメントフィールドであってはなりません。使用されているSELECTステートメントが42のレコードを選択する場合、新しいテーブルは1から始まる各レコードに対して1ずつインクリメントされるフィールドを持ちます。次のグループは、このフィールドを1にしてから、選択したレコードごとに増分する必要があります。これは可能ですか?ほとんどの検索で自動インクリメントキーの検索結果が見つかるたびに、使用する構文を見つけるのが難しいです。mysqlのselectに基づいて挿入中に非自動インクリメントフィールドをインクリメントする
INSERT into images (filename, imgpath, imagenumber)
SELECT filename, imgpath, 1+
FROM old_images
WHERE event_id = 20
これは、テーブルの簡単な例ですが、MySQLに直接画像テーブルにimagenumberフィールドに置かれているものをインクリメントする方法がある場合、私は思ったんだけど。
の線に沿ってUser-Defined Variables
何かを使用してを見てください常に変数のnull値を返します。 クエリブラウザで次の操作を行うと、列名に式が含まれていますが、値はnullです。私は明白な何かを欠いていますか – jsieber
私の問題は、mysqlクエリーエディタでこれを実行しようとしたためです。私はcoldfusionのページから同じSQLを試して、それは正常に働いた。私は、クエリーブラウザが挿入された各行に対して新しい接続を作成し、毎回その変数を削除するとの説明を見つけました。 – jsieber