以下のように、LOAD INFILEを使用してtxtファイルをインポートしようとしています。
LOAD DATA LOCAL INFILE '/home/xxxx/cloud_20181003.txt' INTO TABLE cloud_log_test FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (CACHECACHESTATUS,CACHERESPONSEBYTES);
正しくインポートしています。問題は、私のデータがキー値型であることです。したがって、セルを挿入すると、"CacheCacheStatus":"unknown"
CacheCacheStatus列と同様に挿入されます。このように値を別々に保存する必要がありますunknown
。次のように代替アイテムを追加しようとしましたが、セル全体が空白として挿入されます。
LOAD DATA LOCAL INFILE '/home/xxxx/cloud_20181003.txt' INTO TABLE cloud_log_test FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (CACHECACHESTATUS,CACHERESPONSEBYTES) SET CacheCacheStatus = REPLACE(@CacheCacheStatus,'"CacheCacheStatus":"','');
ベストアンサー1
私のクエリに「@」がありません。 :-) 私は今働いています。
LOAD DATA LOCAL INFILE '/home/xxxx/cloud_20181003.txt' INTO TABLE cloud_log_test FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (@CACHECACHESTATUS,CACHERESPONSEBYTES) SET CacheCacheStatus = REPLACE(@CacheCacheStatus,'"CacheCacheStatus":"','');