2016-12-07 20 views
0

productテーブルに値を挿入しようとしています。product2テーブルのように。別のテーブルからテーブルに挿入するときのエラーメッセージ

INSERT INTO product 
    SELECT * 
     FROM product2 
     WHERE product_code = 8002-25768; 

ただし、次のメッセージが表示されています。

ERROR 1136(21S01):列数が行1

で値の数と一致していないテーブルは同じ構造(同じを持っている場合は、私に

おかげ

+0

ようこそ。あなたの質問に「sql」タグを追加してください。 –

答えて

0

チェックを助けてください同じインデックスの列数と同じ種類)

0

つまり、product異なるの列数はproduct2より大きくなります。したがってproduct2は、スペアカラムまたはproductのいずれかがのものが割り当てられていませんです。私はpKターゲット列がcolumnKソース1に対応していることがわかり、

INSERT INTO product(p1, ..., pN) 
    SELECT column1, -- this will be written into p1 
      ... 
      columnN -- this will be written into pN 
     FROM product2 
     -- do you really want subtraction: 8002-25768 = -17766??? Probably '8002-25768' 
     WHERE product_code = '8002-25768'; 

に問い合わせをしてください書き換え示唆しています。

+0

あなたは正しいです、それは減算ではなく '8002-25768'です。 –

関連する問題