0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CSVファイルにSQLできるツールが便利だった

Posted at

この手のツールはいくつかあるようなのですが、今回「q」というのを使ってみました。

http://harelba.github.io/q/

内部的にSQLite3を使っているようで、サブクエリやJOINもできる本格的なSQLが使えます。
RDBのテーブルを適当にCSV出力したものを手元で加工するのに非常に便利でした。

何かと便利に使えそうなので、MacならHomebrewでサクッと入れておくと良いでしょう。

% brew install q

ですがbrewで入れただけだと、僕の環境では次のようなエラーが出てしまいました。

% q
Traceback (most recent call last):
  File "/usr/local/bin/q", line 49, in <module>
    from six.moves import configparser, range, filter
ImportError: No module named six.moves

Pythonのsixというモジュールが必要なようです。次のようにインストールしたら解消しました。

% pip install six

使ってみます。

オプションは-Hで1行目がヘッダであることを明示。-d','でカンマ区切り(CSV)であることを明示します。

2つのCSVファイルをJOINして新しいCSVファイルに書き出すなんてこともできて便利!

% q -H -d',' "
SELECT l.created_at, u.full_name, l.url
FROM logs.csv l
INNER JOIN users.csv u ON u.id = l.user_id
ORDER BY l.created_at ASC
" > access_log.csv
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?