csv ファイルからのデータを特定のテーブルにロードする必要があります。csv ファイルの 5 つのフィールドをテーブルにロードしています。csv ファイルの特定のフィールド値に正規表現を適用する必要があります。一致しない場合は、そのレコードを拒否する必要があります。出来ますか ?
これは私のロードデータクエリです:
LOAD DATA LOCAL INFILE ''/test.csv''
INTO TABLE TEST_TABLE FIELDS
TERMINATED BY '',''
LINES TERMINATED BY ''\n''
(@FIELD1,@FIELD2,@FIELD3,@FIELD4,@FIELD5)
SET
FIELD1=STR_TO_DATE(@FIELD1,''%d-%m-%Y''), FIELD2=nullif(@FIELD2,''''),
FIELD3=nullif(@FIELD3,''''), FIELD4=nullif(@FIELD4,''''),
FIELD5=nullif(@FIELD5,'''');
csv ファイルの field4 に入っている値が 200 または 300 の場合、そのレコードを考慮して他の値をロードする必要があります。それ以外の場合は、レコードを拒否する必要があります。
サンプルファイル::
1),234232323,ステータス,200,33
2),45454545,ステータス,300,33
3),646546445,ステータス,100,33
ここでは、1 番目と 2 番目のレコードを考慮し、3 番目のレコードは拒否する必要があります。