私は2つの列を持つテーブルを持っています。私はVALUEを使うことができません。コードは次のとおりです他のテーブルの別の列を選択して1つの列に挿入しますが、2番目の列を入力する方法
INSERT INTO Numbers(number, val) SELECT LaptopID FROM Laptop WHERE Laptop.Pid = 2
「val」列が空白のままになっていますが、どのように記入したらいいですか?
私は2つの列を持つテーブルを持っています。私はVALUEを使うことができません。コードは次のとおりです他のテーブルの別の列を選択して1つの列に挿入しますが、2番目の列を入力する方法
INSERT INTO Numbers(number, val) SELECT LaptopID FROM Laptop WHERE Laptop.Pid = 2
「val」列が空白のままになっていますが、どのように記入したらいいですか?
使用NULL
列がそれを許可する場合:
INSERT INTO Numbers(number, val)
SELECT LaptopID, NULL
FROM Laptop WHERE Laptop.Pid = 2
それともたい意図(ハードコード)値を使用します。
数の場合:
INSERT INTO Numbers(number, val)
SELECT LaptopID, 2
FROM Laptop WHERE Laptop.Pid = 2
またはテキストの場合:
INSERT INTO Numbers(number, val)
SELECT LaptopID, 'val'
FROM Laptop WHERE Laptop.Pid = 2
@ shervin-問題ありません –
ここに変数を与えることができますか? 'INSERT INTO Numbers(@columns)' ?? –
@columns:= 'column_1、column_2' –
SELECTの引数として追加します。たとえば、次のように
INSERT INTO Numbers(number, val)
SELECT LaptopID, 'val'
FROM Laptop
WHERE Laptop.Pid = 2
あなたは数に行く必要が対応する値を持っていない場合。その後、あなただけのゼロまたはNULLに置くことができます。
INSERT INTO Numbers(number, val) SELECT L.LaptopID, OT.OTHER_COLUMN FROM Laptop L
INNER JOIN OTHER_TABLE OT ON L.SOME_COLUMN = OT.ANOTHER_SOME_COLUMN
WHERE Laptop.Pid = 2
私見を、あなたは、INNERが、他のテーブルとJOINをこのようなものが必要複数のテーブルの更新などをサポートしていないので、以下のメソッドを使用しました。
SELECT Laptop.LaptopID, Table2.val FROM Laptop, Table2 WHERE
Laptop.Pid = 2 or where laptop.pid= table2.pid
g http://sqlcebulkcopy.codeplex.com/
助けて欲しいと思っています。
SQLCE:このような
Somethign ---
INSERT INTO numbers (number, val)
SELECT NULL, laptopid
FROM laptop
WHERE laptop.pid = 2
それはあなたが入れたいものによって異なります。デフォルト値、 'Laptop'テーブルに格納された値、値なし(' NULL')、または何か他のものを使いますか? *(SQL、SQL、MySQL、Oracleのどちらの変種ですか?)* – MatBailie
あなたは以下のことを行うことができます。INSERT INTO数値(数値、値)LaptopID、1 Laptop Laptop.Pid = 2 2番目の列に質問が挿入されます。 – AJP
次の列に別のテーブルにも値が格納されているとします。これはSQL Server CE –