イムを挿入中の値を制限:SQL次挿入しようとし、別のテーブルから
insert into TABLEA select b.ID,..... from TABLEB b where code = 'NL'
問題であることを選択* TABLEBからコード=「NL」; 1つ以上の値を返します。
とにかくそれを1つの値に制限するにはどうすればよいですか?
iはselect min(b.id)
しようとしたが、それは
イムを挿入中の値を制限:SQL次挿入しようとし、別のテーブルから
insert into TABLEA select b.ID,..... from TABLEB b where code = 'NL'
問題であることを選択* TABLEBからコード=「NL」; 1つ以上の値を返します。
とにかくそれを1つの値に制限するにはどうすればよいですか?
iはselect min(b.id)
しようとしたが、それは
使用rownum = 1
insert into TABLEA select b.ID,..... from TABLEB b where code = 'NL' and rownum = 1
を仕事didntはしかし、あなたは、あなたがこれを行うにはよろしいですか?実際には2行目が必要な場合はどうなりますか?クエリが複数の理由を返す理由を理解したいかもしれません。
あなたが集めることができるものは、これに適合する複数のレコードがあるにもかかわらず、code = NLが挿入される場所が1つだけ必要です。
これが必要な場合は、「select *」を「select top 1 *」に変更し、サブクエリから1つのレコードのみを取り出します。
TOPはSQL Serverのみで動作し、OPは通常はOracleであるPL SQLを使用しています。 – CathalMF