レビューメディア「ジグソー」

SQLで詰んだとき。

VBとかJavascriptでプログラムを書いているとき、SQLの記法に迷った時のウラワザ(?)です。
SQLをテキストエディタで書いていくのはわかりにくいものですが、AccessではGUIでクエリを作るとSQL文が生成されます(SQL文を書いてもGUIに反映されます)。なのでこれを参考にします。Accessのクエリは、視覚的にわかりやすいので解に結びつくかもしれません。


ちょっとややこしいデータ抽出のとき、Accessで作ってみてからMySQLで発行しました。
同じ結果が得られました。

▷ 手順
ターゲットのSQLデータベースにAccessからODBCを利用して接続

Accessでクエリを作成

Accessが生成した SQL文を確認

コマンドラインでSQLを発行して実験

そのSQL文をコードに実装

AccessSQLとMySQLとでは細かい点で表現が異なるので修正が必要になることがあります(むしろ多い)。
「MySQL」ではなく、マイクロソフトの「SQL Server」の場合は少ない修正で済むのかもしれません。
Accessを使い慣れている場合には意外と役に立ちます。ヒントくらいにしかならないこともありますが。

▷ 役に立たない場合もあります(複数テーブル・クエリ ⇔ サブクエリ 問題 )
Accessでは、別のクエリを利用して新しいクエリを作ることがあって、SQLでは同様のことをサブクエリによって行います。
複数のクエリやテーブルを関連付けてデータ抽出や集計を行う場合、AccessのGUIはわかりやすく作業を進めることができます。
しかし、1本のSQL文にしたいと思い、AccessのSQLビューで手作業で編集したあとGUIのデザインビューに戻ってみると謎の「%$##@_Alias」テーブルのようなができていて、GUIからの操作は拒まれた感じになっています。が、実行結果は正しいようです。
具体的には、AccessSQLでは、FROM句にサブクエリを使ったSQL文につき、実行はできるけれどデザインビューからの操作はできそうもない、ということがわかりました。
  • 購入金額

    0円

  • 購入日

    2014年10月11日

  • 購入場所

16人がこのレビューをCOOLしました!

コメント (0)

ZIGSOWにログインするとコメントやこのアイテムを持っているユーザー全員に質問できます。

YouTube の動画を挿入

YouTube の URL または動画の ID を入力してください

動画の ID が取得できません。ID もしくは URL を正しく入力してください。

ニコニコ動画の動画を挿入

ニコニコ動画の URL または動画の ID を入力してください

動画の ID が取得できません。ID もしくは URL を正しく入力してください。

ZIGSOWリンク挿入

検索対象とキーワードを入力してください

    外部リンクを挿入

    リンク先の URL とタイトルを入力してください

    URL を正しく入力してください。

    画像を挿入(最大サイズ20MB)

    画像を選択してください

    ファイルサイズが20MBを超えています

    別の画像を追加