逆引きSQLリファレンス


ホーム サイトマップ
トップページ >逆引きSQLリファレンス

このページは,Access2000をベースに記述しています.
SQLは,データベース(SQLServer,Oracleなど)によって異なる場合がありますので注意してください.
  1. 選択
    ある条件と一致するデータを抽出する
    データをグループ化する
    グループ化されたデータに検索条件を指定する
    データを並べ替える2005/7/28追加
    列に別名をつける
  2. 結合
    内部結合
    外部結合
    自己結合
    サブクエリ
  3. 演算子
    算術演算子(加減乗除,剰余)
    比較演算子(等しい,以上,大きい,以下,小さい,不一致)
    文字列演算子(連結,類似)2005/7/28追加
    論理演算子(かつ,いずれか,でない)
    集合演算子(UNION,UNION ALL)
    その他演算子(IN,BETWEEN)
  4. データ操作
    追加
    新規表とデータの追加
    更新
    削除

  5. 表の作成
    表の変更
    表の削除

◆すべてのデータを抽出する

選択した列のすべてのデータを抽出します.

 [書式]
SELECT <列名> FROM <表名>

◆ある条件と一致するデータを抽出する

選択した列から,抽出条件に該当するデータのみ抽出します.

 [書式]
WHERE <抽出条件>

◆データをグループ化する

 GROUP BY句を使うと,(GROUP BY句で指定した)列の値が同一のものをひとつにまとめることができます.
 [書式]
GROUP BY <列名>

 [注意]
  1. SELECT句では,通常の列と集計関数を指定していることに注意する.
      (通常の列と集計関数を単純に組み合わせて使うことは出来ない.)
  2. グループの中で値が一意に定まらない列をSELECT句に指定することはできない.

◆グループ化されたデータに検索条件を指定する

 [書式]
HAVING <列名>

◆データを並べ替える

指定した列の昇順もしくは降順に並べ替えることができます.
列名は,並べ替えの優先順位が高いものから先に記述します.

昇順

 [書式]
ORDER BY <列名> ASC
  列名は,並べ替えの優先順位が高いものから先に記述します.
  ※ASCは省略可能

降順

 [書式]
ORDER BY <列名> DESC
  列名は,並べ替えの優先順位が高いものから先に記述します.

昇順・降順

  列名1の昇順,列名2の降順に並べ替えます.
 [書式]
ORDER BY <列名1> , <列名2> DESC

降順・昇順

  列名1の降順,列名2の昇順に並べ替えます.
 [書式]
ORDER BY <列名1> DESC, <列名2>

◆列に別名をつける

[書式]
<列名> AS 別名

◆内部結合

 内部結合は,結合するキーを基準として,お互いの内容と一致するもののみ抽出する結合です.

 [書式]
FROM <表名> INNER JOIN <表名2> ON <結合条件>

◆外部結合

左外部結合

 左外部結合は,結合するキーを基準として,左側の表の内容をすべて抽出し,右側の表の内容は,左側の表の内容と一致するもののみ抽出する結合です.

 [書式]
FROM <表名> LEFT JOIN <表名2> ON <結合条件>

右外部結合

 右外部結合は,結合するキーを基準として,右側の表の内容をすべて抽出し,左側の表の内容は,右側の表の内容と一致するもののみ抽出する結合です.

 [書式]
FROM <表名> RIGHT JOIN <表名2> ON <結合条件>

◆自己結合

特殊な結合方式である自己結合は,自分自身と結合します.
自己結合は,データの内部的な整合性を確認するときに役立ちます.

 [書式]
FROM <表名>,<表名> AS <表名の別名> ON <結合条件>

◆サブクエリ

 クエリのなかにクエリを埋め込むクエリのことで,副問い合わせとも呼びます.

ひとつの値を求めるサブクエリ

 [書式]
  SELECT <列名>
FROM <表名>
WHERE <列名> =
(SELECT <列名>
FROM <表名>
WHERE <結合条件>)

 [注意]
  サブクエリの結果は,必ず一意に定まるように設定します.

複数の値を求めるサブクエリ

 [書式]
  SELECT <列名>
FROM <表名>
WHERE <列名> IN
(SELECT <列名>
FROM <表名>
WHERE <結合条件>)

算術演算子

値を加える(加算演算子)

[書式]
<列名1>  +  <列名2> 

値を差し引く(減算演算子)

[書式]
<列名1>  -  <列名2> 

値をかけ合わせる(乗算演算子)

[書式]
<列名1>  *  <列名2> 

値を割る(除算演算子)

[書式]
<列名1>  /  <列名2> 

余りを求める(剰余演算子)

[書式]
<列名>  Mod  <除数> 

※%

◆比較演算子

値と等しい列名を抽出する

[書式]
WHERE <列名>  =  <値> 

値より大きい列名の値を抽出する

[書式]
WHERE <列名>  >  <値> 

値以上の列名の値を抽出する

[書式]
WHERE <列名>  >=  <値> 

値より小さい列名の値を抽出する

[書式]
WHERE <列名>  <  <値> 

値以下の列名の抽出する

[書式]
WHERE <列名>  <=  <値> 

値と一致しないものを抽出する

[書式]
WHERE <列名> <> <値>

◆文字列演算子

文字列を連結する(文字列連結演算子)

[書式]
<列名> & <列名> 

※||

指定した条件に似た文字列を抽出する(Like演算子)

[書式]
WHERE Like <条件> 

任意の文字列を含む

[書式]
WHERE Like *<文字列>* 

※%

前方に任意の文字列を含む

[書式]
WHERE Like <文字列>* 

後方に任意の文字列を含む

[書式]
WHERE Like *<文字列> 

前方に任意の文字列と1文字を含む

[書式]
WHERE Like <文字列>? 

※_

後方に任意の文字列と1文字を含む

[書式]
WHERE Like ?<文字列>

◆論理演算子

複数の条件を満たすものを抽出する(AND演算子)

[書式]
WHERE <条件1> AND <条件2>

いずれかひとつの条件を満たすものを抽出する(OR演算子)

[書式]
WHERE <条件1> OR <条件2>

条件でないものを抽出する(NOT演算子)

[書式]
WHERE <列名> NOT <条件>

◆集合演算子

UNIONクエリは,複数のテーブルもしくはクエリの結果をつなぎあわせたもので,UNIONクエリとUNION ALLクエリの2種類があります.

UNION

複数のテーブルもしくはクエリの結果をつなぎあわせて,重複する行を除いたものを 求めます.

[書式]
    SELECT <列名> FROM <表名>
UNION
SELECT <列名> FROM <表名>

UNION ALL

複数のテーブルもしくはクエリの結果をつなぎあわせます.
[書式]
    SELECT <列名> FROM <表名>
UNION ALL
SELECT <列名> FROM <表名>

◆その他演算子

指定した値を含む列を抽出


[書式]
    SELECT <列名> FROM <表名>
WHERE <列名> IN(<値1> , <値2>)

指定した値の範囲内にある列を抽出


[書式]
    SELECT <列名> FROM <表名>
WHERE <列名> BETWEEN <値1> AND <値2>

◆追加

一行データの追加

[書式]
INSERT INTO <表名> (<列名1>,<列名2>,…) VALUES (<値1>,<値2>,…)

[諸注意]
データの追加を行うには以下の点に注意する必要があります.
  1. 追加元と追加先の列のデータ型は同じでなければならない  
  2. 追加元と追加先の列は対応づけられていなければならない

複数データの追加

[書式]
INSERT INTO <表名> SELECT <表名2.列名1>,<表名2.列名2>,… FROM <表名2> ORDER BY <表名2.列名1>,<表名2.列名2>

[諸注意]
データの追加を行うには以下の点に注意する必要があります.
  1. 追加元と追加先の列のデータ型は同じでなければならない  
  2. 追加元と追加先の列は対応づけられていなければならない  
  3. 追加元と追加先のテーブルは同じであってはならない

◆新規表とデータの追加

[書式]
SELECT * INTO <追加先表名> FROM <追加元表名> 

◆更新

[書式]
UPDATE <表名> SET <列名> = <値>

条件に一致するデータの更新

[書式]
UPDATE <表名> SET <列名> = <値> WHERE <条件>

◆削除

[書式]
DELETE FROM <表名>

◆表の作成

表の作成を行います.
[書式]
  CREATE TABLE <表名> (
<列名1> <データ型> [NOT NULL],
<列名2> <データ型> [NOT NULL],
<列名3> <データ型> [NOT NULL], ・・・)

◆表の変更

表の変更を行います.
[書式]
  ALTER TABLE <表名> {
ADD <列名> <データ型> ・・・
ALTER <列名> <データ型> ・・・
DROP <列名> <データ型> ・・・}

◆表の削除

表の削除を行います.
[書式]
DROP TABLE <表名> 



作成日:2004/12/4
更新日:2005/7/28
Copyright (C)2003-2005 Orakumiko All rights reserved.

[PR]湘南美容外科で働きませんか?:全国19院。医師、看護師ほか募集中