データを別のテーブルから選択した後、あるテーブルにデータを挿入する次のクエリがあります。テーブルから選択して別のテーブルに挿入すると、タイプエラーが発生する
問題は、いずれかの列のデータ型が一致しないことです。私は以下の質問を単純化しました。
INSERT INTO tbl.LogTable (
[SelPartNo], -- This does not match, see below
)
SELECT TOP 1
IF([SelPartNo] = 'False', NULL, [SelPartNo],
FROM tbl.MyTable
WHERE ID = '20358'
ORDER BY CreateDate DESC
SelPartNo
最初は整数であり、第二はVarChar
あります。ほとんどの場合、SelPartNo
は2番目のもの(tbl.MyTable
)はNULL
または整数ですが、問題は発生しません。しかし場合によっては値が "False"であるため、NULL
を返す必要があります。
私はIF文を試しましたが、文法上の誤りがあり、これが正しい方法であるかどうかはわかりません。
括弧がありません。これは本当にSQL Server上で実行しようとした逐語的なコードですか? –
また、IFは、IIFでなければなりません。 –
これは簡単なコードです。私は助けが必要なのは5号線です。 – MSOACC