リレーショナルデータベース(RDBMS)を操作するための言語「SQL」。
データを取り出したり、追加したりする場合に必要で、データベースを扱う必要があるアプリケーションやサービスを開発する場合、SQLの知識は必須と言っても良いかもしれません。
本日紹介する「Visualize SQL Queries」は、このSQLの動作を分かりやすくアニメーションで表示してくれるWebサービスです。
開発者のKshitiz Tanwar氏は、同僚とSQLの問題をデバッグした際、2年ぶりにSQLを触ったこともあり、ユニオンとジョインを間違えて恥をかいてしまったとのこと。SQLの記憶をリフレッシュするため、自分自身のためにSQLを視覚化するためのツールを作ったそうです。
以下使用方法を説明します。
SQLキーワードを選択
Visualize SQL Queriesを使用するには、最初に「SQL Keywords」を選択します。一番簡単な「SELECT」を選択すると、以下のようなSQL文と「Customer」テーブルが表示されます。
SELECT custFirstName, custLastName FROM Customers;
Customerテーブルから名前を選択するシンプルなSQLです。
「Visualize!」ボタンをクリックするとSQLの実行が始まります。実行中のテーブルのデータ部分がハイライト表示され、「Result」に結果が表示されていきます。
「LEFT JOIN」を選ぶと左外部結合のサンプルSQL、および「Teams」「Games」テーブルが表示されます。
SELECT Games.gameID, Teams.teamName AS winningTeam FROM Teams LEFT JOIN Games ON Teams.teamID = Games.gameWinner;
TeamsとGamesを左結合して結果を表示するSQLです。
同様に「Visualize!」ボタンをクリックするとSQLの実行が始まります。
その他、DISTINCT、WHERE、ORDER BY、LIMIT、GROUP BYなどさまざまなタイプのSQLクエリを可視化することができます。
まとめ
Visualize SQL QueriesはSQLクエリをわかりやすくアニメーションで表示してくれるWebサービスです。なお、Hacker Newsには、データベースは実際はテーブルスキャンを行わない場合も多く、アニメーションはミスリーディングを誘発するとの批判も寄せられており、実際のデータベースの動作とは異なる場合がある点については、注意が必要かもしれません。