私はSQLデータベースにインポートしたいいくつかのテキストファイルを持っています。データはコンマで区切られていないので、コンマでデータをインポートするという私の考え方に従わない。ただし、データは複数の行にまたがっています。以下のテキストファイルの例を参照してください。どのように私はプログラムされた平均値、シフト番号などの特定のデータをインポートすることができます助言誰も助けてください?テキストファイルをSQLデータベースにインポート
-2
A
答えて
-1
あなたは、正規表現を使用してファイルの内容を解析一行にそれを回す、そして必要な場合、セミコロンを挿入するためにC#で簡単なアプリケーションを書くことができます。
0
マシンで生成されたレポートがあるようです。理想的なアプローチは、マシンに別のレポートを作成させることです。つまり、 '/////'のないレポートや、インポートするデータだけです。そのため、新しいレポートの出力は次のようになります。実際に
shift_num, prog_min, mean_sec, att_sec, adt_min
1, 600, 599, 658, 210
...
、しかし、それはそのようなレポートを取得するには、多くの場合、「可能」ではありません。 (つまり、マシンではが常にですが、しばしば人間は嫌です)。そのときは、好きなテキスト処理言語を使用してレポートを使用可能なデータに変換します。
私はこの種のもののためにawkが好きです。 perlのようなもの
説明するために、このレポートのレプリカをキー入力しました。 (test.datとして保存されています)
ORDER Nr FG68909 Q.ty Ordered 99
...
SHIFT Nr. 1
////////
PROGRAMMED MEAN
600 min JOB TIME 599 sec
AVERAGE Turnaround Time 658 sec
AVERAGE Delivery Time 210 mins
私はこのawkプログラムを書きました。レポートのレイアウトについては、多くの前提があります。それらのうちのいくつかはおそらく実際のデータに失敗するでしょう。
/SHIFT/ {shift = $NF}
/JOB TIME/ {
programmed = sprintf("%d %s", $1, $2);
mean = sprintf("%d %s", $(NF-1), $NF);
}
/AVERAGE Turnaround/ { avg_turnaround = sprintf("%d %s", $(NF-1), $NF);}
# Assumes the line "AVERAGE Delivery" is also the end of the record.
/AVERAGE Delivery/ {
avg_delivery = sprintf("%d %s", $(NF-1), $NF);
printf("%d, '%s', '%s', '%s', '%s'\n", shift, programmed, mean, avg_turnaround, avg_delivery);
# Clear the vars for the next record.
shift = "";
programmed = "";
mean = "";
avg_turnaround = "";
avg_delivery = "";
}
出力です。 。 。
$ awk -f test.awk test.dat
1, '600 min', '599 sec', '658 sec', '210 mins'
関連する問題
- 1. SQL Server 2008データベースにテキストファイルをインポートする
- 2. sql oracle - テキストファイルをインポート
- 3. エクスポート - テキストファイル - SQLデータベース
- 4. PythonでSQL Serverにテキストファイルをインポートする
- 5. テキストファイルをSQL Serverにインポートするスクリプト
- 6. XMLをSQLデータベースにインポート
- 7. SQL Server 2008データベースにファイルをインポートする
- 8. ODBCデータベースをMS SQL 2005にインポートする
- 9. txtファイルからSQLデータベースにデータをインポート
- 10. .sqlファイルをsqliteデータベースにインポートする
- 11. XLSXファイルをSQLデータベースにインポートする
- 12. CSVファイルをSQL Serverデータベースにインポートする
- 13. テキストファイルからデータベースにデータをインポートするには?
- 14. テキストファイルをインポートしてデータをデータベースに保存する方法は?
- 15. テキストファイルをデータベースにインポートする - 不要なスペース文字
- 16. EWS - SQLデータベースにインポートする電子メール
- 17. テキストファイルからIntをSQL Server 2008 R2にインポートする
- 18. テキストファイルの2つの列をSQLテーブルにインポートします。
- 19. テキストファイルをmysqlにインポートする
- 20. REST APIからAzure SQLデータベースをインポート
- 21. Androidテキストファイルのインポート
- 22. テキストファイルからSQL Serverデータベースにインポートするには、どのソリューションを選択する必要がありますか?
- 23. Web SQLデータベースに行単位でテキストファイルを挿入する方法
- 24. カラム名のないSQLデータベースにテキストファイルを保存する
- 25. SQL Server - Azure SQLデータベースのbacpacファイルを仮想マシン上のSQL Server 2014にインポート
- 26. C#:SQLスクリプトをデータベースにプログラムにインポートするには?
- 27. Elasticsearchでテキストファイルをインポートする
- 28. Python2.7でテキストファイルをインポートする
- 29. レポート目的のためにsapr3からsqlデータベースにcsvをインポート
- 30. .sqlファイルをUbuntuのpostgrSQLデータベースにインポートするには
コンマを使用してデータをインポートできますが、スペースの数や固定長を調べてデータをインポートするなどのことはありますか? – Blob
はい、* I *は固定幅のデータをインポートできますが、OPは固定幅のデータをインポートできます。しかし、彼は固定幅データを持っていません。彼はファイルに保存されたレポートを持っています。 –
こんにちは、私はまだこれと苦労しており、AWKとAWKAを研究しましたが、まだ失われています。私は各チュートリアルや、各テキストファイルから特定のデータを抽出する簡単な方法があるのだろうかと思っています。ありがとう – Blob