joppot

コピペで絶対動く。説明を妥協しない

プログラミング

MysqlのSELECT FROMの結果を美しく、見やすく表示する

投稿日:

Pocket

waのコピー

概要

みなさんこんにちはcandleです。今回はmysqlのデータベースに関する簡単な記事です。
データベース系の言語は最近、様々出てきましたが、私は未だにMysqlくらいしか触っていません。

私はphpもmysqlを使っているしrailsもmysqlを使っています。

mysqlでよく使う構文といえば、select文update文insert文が多いのではないでしょうか。その中でも特に多いのがデータを持ってくるselect文だと思います。このselect文、面倒くさいのでだいたい、テーブルに収まっている全ての要素を持ってきます。下のようにクエリーを投げますよね。

SELECT * FROM テーブル名;

上のクエリーの結果、表示される内容はMysqlの要素が多いとゴチャゴチャに出てきます。

この問題を解決しましょう。

前提

Mysqlが自由に使える



Mysqlのサンプルデータを用意する

このデータは必ずしも用意しなくても構いません
適当な、データベースに下のテーブルとレコードを収めましょう。私はいつも、alltestデータベースにおさめています。

-- テーブルの構造 `users`

CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL,
  `password` varchar(255) NOT NULL,
  `age` int(10) NOT NULL,
  `gender` varchar(10) NOT NULL,
  `food` varchar(100) NOT NULL,
  `country` varchar(10) NOT NULL,
  `hobby` varchar(20) NOT NULL,
  `created` datetime NOT NULL,
  `modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;

--
-- テーブルのデータのダンプ `users`
--

INSERT INTO `users` (`id`, `name`, `password`, `age`, `gender`, `food`, `country`, `hobby`, `created`, `modified`) VALUES
(1, 'alice', 'lalalalalalal', 10, 'female', 'ハンバーグ', 'UK', 'お茶会', '2014-02-14 05:29:13', '2014-04-25 08:18:57'),
(2, 'bob', 'lolololololo', 12, 'male', 'カレーライス', 'UK', 'ゴルフ', '2014-02-17 21:11:44', '2014-04-25 08:19:13'),
(3, 'tom', 'beeeeeeeeee', 15, 'male', 'スパゲッティ', 'US', '旅行', '2014-02-18 04:37:07', '2014-04-25 08:19:28');

MAMP

用意ができました。

SELECT * FROMを美しく、見やすく表示する

Mysqlにログインしましょう。データベースを選び、サンプルデータを見てみます。

show tables;

1. mysql

試しに、一般的なselect * fromをやってみましょう。

SELECT * FROM users;

結果は下のように表示されます。
1. mysql-1

次にMysqlクエリーの最後のセミコロンの代わりに「 \G 」を付けてみましょう。

SELECT * FROM users\G

1. mysql-2

どうでしょうか?
美しく結果が表示されましたね。


まとめ

データベースに収まっているレコードを調べたい場合などに大活躍する「 \G 」を使っていきましょう。
 

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-プログラミング
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

basscss v8以降にv7以前のスタイルを追加する(自分用メモ)

概要 みなさんこんにちはcandleです。今回はbasscssのv8でかなりデフォルトのスタイルから削除されてしまったスタイルをインポートします。 v7以降からbasscssのスタイルはかなり分割され …

Mysqlのdatetime型とtimestanp型で保存されているデータを年月日だけを指定して任意の日にちのデータを取得する方法

概要 みなさんこんにちはcandleです。今日はmysqlのdatetime型とtimestanp型におさめられているデータの取得を紹介します。 datetimeやtimestanpは多くの場合下のよ …

phpmyadminでmysqlデータベースの照合順序を変更する

概要 みなさんこんにちはcandleです。 ちょっとした事なのですが、意外に分からなかったのでまとめました。 phpmyadminを使ってデータベースを作ると、うっかり、utf8_general_ci …

railsのform_forとstrong parametersを使用してpdfをアップロードする

概要 みなさんこんにちはcandleです。今回はrailsのform_forを使って、railsプロジェクトのpublicディレクトリにpdfファイルをアップロードしてみましょう。 form_forは …

C++のopencvでhelloworld

概要 みなさんこんにちはcandleです。インストールできたopencvを使ってhelloworldを行いましょう。 opencvでhelloworldとはなんぞや、と感じるかもしれませんが、open …

  • English
  • 日本語

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

スポンサードリンク

アーカイブ