質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

492閲覧

csvファイルのDB読み込みの相談(Mysql) 【DBに詳しいかた】

reotantan

総合スコア295

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/05/01 09:47

csvファイルのDB読み込みについて、以下の手順で実施できたのですが、手順が多く煩わしく、csvファイルからDBにデータを読み込み、テーブル作成から投入までお手軽かつ、一気にできないか気になっており、助言をいただければと思います。

  1. MYSQLにデータベースと読み込むCSVが適合するテーブルを作成する
  2. 作成したテーブルに対して以下のコマンドで、CSVの列番号とデータベースのカラム名を一致させるようにインポート

実施したい内容

インポートしたいcsvを読み込むと、勝手に型判定して、テーブルまで自動的に作ってくれる
(こちらコーディングすれば、できるのはわかっているのですが、既存のライブラリ等でできるなら、そちらで実装したく)

該当のソースコード

SQL

1LOAD DATA INFILE 'file_name' 2INTO TABLE table_name 3FIELDS TERMINATED BY ';' ENCLOSED BY '"' 4LINES TERMINATED BY '¥r¥n' IGNORE 1 LINES 5(@fieldA, @fieldB, @fieldC, @fieldD, @fieldE, @fieldF) 6SET col2=@fieldA, col3=@fieldC, col4=@fieldD, col5=@fieldF; 7

補足情報

DBのインポートに関して参考になるリンク等ありましたら、いただければと思います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

投稿2019/05/01 13:45

sazi

総合スコア25195

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

reotantan

2019/05/11 11:13

ありがとうございます。よろしくお願いします
guest

0

ベストアンサー

pandasDataFrameに変換し、to_sqlでデータベースにテーブルを作るというのはどうでしょうか。

pandas.DataFrame.to_sql — pandas 0.24.2 documentation

投稿2019/05/01 09:54

hayataka2049

総合スコア30933

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

reotantan

2019/05/01 11:05

回答ありがとうございます。 pandasですね、名前は聞いたことはありましたが、あまり学習したことがなく、勉強してみます。 ■質問:pandasは他の実装に比べて処理時間が短いのか また一点、気になったのが、pandasは他の実装方法に比べて、処理時間は短いものなのか、ご理解の範囲で構いませんので教えていただいてもよろしいでしょうか。(私自身、それぞれの処理時間を比較していくつもりですが、(職種的に大量のデータを処理することになりそうで、プロの方の理解をお聞きしたく)
hayataka2049

2019/05/01 11:36

プロという訳ではありませんが、pandasの処理速度としては、 - 基本的にオンメモリで処理するので、メモリに乗り切るのであれば高速に処理できます。ただし、書き方次第で数桁変わったりもするので、慣れていないと少し困るかもしれません。 - メモリに乗り切らない規模だと遅いというか、処理できません。CSVの大きさが1GB以下くらいであればなんとかハンドリングできる可能性が高いですが(ただし型にもよるので一概に言えない)、それより大きいのであれば工夫が要ります。
reotantan

2019/05/11 11:12

お返事が遅くなってしまい、失礼しました。 オンメモリで処理だと一定量までは高速に処理できるが、一定量を越えると分散処理といった工夫が必要ですね。 ご回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問