0

テーブルt1(id int(5)、recordnum varchar(10)、claimnum float)とテーブルt2(id int(5)、recordnum varchar(10)、Docnum varchar(max)があります。

以下のようにt2データをt1に挿入しています

insert into t1(id, recordnum, claimnum) 
select id,recordnum,Docnum

このステートメントは、Docnum にすべての番号が含まれるまで完全に実行されます。私の問題は、Docnum= '0067576A887' のようないくつかの列があり、挿入されず、問題が発生することです。

この列を除外して他の列を挿入し続ける方法はありますか

4

2 に答える 2

0
insert into t1(id, recordnum, claimnum) 
select id,recordnum, Docnum  where Isnumeric(docnum)=1

psはisnumericに注意してください

特殊なケースでは予測できない結果になります。最善の解決策は、int または float .TryParse 関数を持つ CLR 関数を使用することです...

でもこれでいいと思います。

于 2012-05-14T11:58:08.660 に答える
0

はい、から削除しますselect:

insert into t1(id, recordnum, claimnum) 
select id,recordnum,Docnum
where Docnum <> '0067576A887'
于 2012-05-14T11:59:52.463 に答える