# コマンドラインから Treasure Data へのクエリとデータインポート Treasure Data CLI (「コマンドラインインターフェース」または「Toolbelt」) を使用すると、データベースとテーブルの作成、テーブルへのデータのインポートまたはエクスポート、テーブルスキーマの設定と変更、クエリの発行、ジョブステータスの監視、ジョブ結果の表示とダウンロード、スケジュールクエリの作成など、さまざまな操作を実行できます。 * [サンプルデータセットのクエリ](/ja/tools/cli-and-sdks/querying-and-importing-data-to-treasure-data-from-the-command-line#query-the-sample-dataset) * [バッチのドメインキーによるべき等クエリの発行](/ja/tools/cli-and-sdks/querying-and-importing-data-to-treasure-data-from-the-command-line#issue-idempotent-queries-by-domain-key-for-your-batch) * [テーブルへのデータインポート](/ja/tools/cli-and-sdks/querying-and-importing-data-to-treasure-data-from-the-command-line#import-data-into-a-table) ## サンプルデータセットのクエリ Treasure Data には、デフォルトで sample_datasets という名前のデータベースに www_access という名前のテーブルがあります。 以下のクエリを実行して、HTTP ステータスコードの分布を計算します: ```bash $ td query -w -d sample_datasets "SELECT code, COUNT(1) AS cnt FROM www_access GROUP BY code" ``` ### バッチのドメインキーによるべき等クエリの発行 td コマンド v0.14 以降、`td query` コマンドは `domain key` をサポートしています。`domain key` により、クライアントはクエリの送信をべき等にすることができます。 クエリを実行できます。例: ```bash $ td query -d sample_datasets --domain-key domainkey-test -T presto "select * from www_access" ``` ``` Job 92034375 is queued. Use 'td job:show 92034375' to show the status. ``` API の問題によりコマンドがジョブ ID で応答しなかった場合、同じドメインキーで同じクエリを再度安全に発行できます。 ```bash $ td query -d sample_datasets --domain-key domainkey-test -T presto "select * from www_access" ``` ```bash Error: Query failed: ["Domain key has already been taken"]: conflicts_with job:92034375 ``` ## テーブルへのデータインポート アプリケーションログ、ミドルウェアログ、その他のソースから実際のデータをクラウドにインポートします。 この例では、TD Toolbelt を使用して JSON 形式のサンプル Apache ログを生成し、「own_database」データベースの新しいテーブルにインポートする方法を示します。 1. サンプルデータを追加します。 ```bash $ td sample:apache sample_apache.json` ``` 1. `own_database` を作成します。 ```bash $ td database:create own_database ``` 1. サンプルデータを own_database にインポートします: ```bash $ td table:import own_database sample_tbl --auto-create-table -f json sample_apache.json ```