logo
     

メニュー
↓ SQL ↓
●データ取得の基本(SELECT)

●取得条件の指定(WHERE)

●計算式を利用する

●取得データの並べ替え
      (ORDER BY)


●別名を付ける

●データを集計(グループ化)する

●テーブルの結合
      (INNER JOIN)


●テーブルの結合
      (OUTER JOIN)


●テーブルの結合
      (CROSS JOIN)


●重複行の排除(DISTINCT)

●副問い合わせ(サブクエリ)

●相関副問い合わせ
      (相関サブクエリ)


●クエリの結合

●文字列値を連結する

●文字列の一部を取り出す

●文字列を置換する

⇒NULLを置き換える

●条件によって置き換える

↓SQL Server 2012 Express↓
●SQL Server 2012 Express
      インストール


●SQL Server 2012 Express
      ネットワークの構成


●SQL Server 2012 Express
      ログインユーザの作成


●SQL Server 2012 Express
      データベースの作成


●SQL Server 2012 Express
      テーブルの作成


●SQL Server 2012 Express
      SQLの実行


●復旧モデルとバックアップ

↓ 番外編 ↓
●Windows Server 2012 評価版
      インストール


●Windows Server 2012
      スタートメニュー利用方法


●Windows Server 2012
      シャットダウン・再起動方法


●Windows Server 2012
      サーバーマネージャ自動起動無効


●Windows Server 2012
      コンピュータ名・ドメイン変更


NULLを置き換える (NVL,ISNULL,IFNULL,COALESCE)


※NULLの置き換えは、CASEなどを利用して実装することも可能です。

―ORACLEの場合―
対象値がNULLだった場合に、別の値に置き換えるには、NVL,COALESCEを利用します。
 NVL   :第一引数の値がNULLの場合、第二引数の値を返す
 COALESCE:引数の先頭から評価し、最初に出現したNULLでない値を返す

文法:NVL(<列名1>, <列名2> | <置換文字列>) もしくは
   COALESCE(<列名1>, <列名2> | <置換文字列>[, <列名3> | <置換文字列>])


―SQL Serverの場合―
対象値がNULLだった場合に、別の値に置き換えるには、ISNULL,COALESCEを利用します。
 ISNULL :第一引数の値がNULLの場合、第二引数の値を返す
 COALESCE:引数の先頭から評価し、最初に出現したNULLでない値を返す

文法:ISNULL(<列名1>, <列名2> | <置換文字列>) もしくは
   COALESCE(<列名1>, <列名2> | <置換文字列>[, <列名3> | <置換文字列>])


―PostgreSQLの場合―
対象値がNULLだった場合に、別の値に置き換えるには、COALESCEを利用します。
 COALESCE:引数の先頭から評価し、最初に出現したNULLでない値を返す

文法:COALESCE(<列名1>, <列名2> | <置換文字列>[, <列名3> | <置換文字列>])


―MySQLの場合―
対象値がNULLだった場合に、別の値に置き換えるには、IFNULL,COALESCEを利用します。
 IFNULL :第一引数の値がNULLの場合、第二引数の値を返す
 COALESCE:引数の先頭から評価し、最初に出現したNULLでない値を返す

文法:IFNULL(<列名1>, <列名2> | <置換文字列>) もしくは
   COALESCE(<列名1>, <列名2> | <置換文字列>[, <列名3> | <置換文字列>])


***例(NVL,ISNULL,IFNULL)***
・売価がNULLの場合は、固定で80を返す
[商品マスタ]
商品名 売価 仕入価格
りんご 100 80
みかん <NULL> 90
ぶどう <NULL> <NULL>
※<NULL>は空を表現

[実行SQL]
--NVL(Oracle)--
SELECT
  商品名,
  NVL(売価, 80) AS 単価
FROM
  商品マスタ
--ISNULL(SQL Server)--
SELECT
  商品名,
  ISNULL(売価, 80) AS 単価
FROM
  商品マスタ
--IFNULL(MySQL)--
SELECT
  商品名,
  IFNULL(売価, 80) AS 単価
FROM
  商品マスタ


[結果]
商品名 単価
りんご 100
みかん 80
ぶどう 80


***例(COALESCE)***
・売価がNULLの場合は、仕入価格を返し、仕入価格もNULLの場合は、固定で80を返す
[商品マスタ]
商品名 売価 仕入価格
りんご 100 80
みかん <NULL> 90
ぶどう <NULL> <NULL>
※<NULL>は空を表現

[実行SQL]
SELECT
  商品名,
  COALESCE(売価, 仕入価格, 80) AS 単価
FROM
  商品マスタ


[結果]
商品名 単価
りんご 100
みかん 90
ぶどう 80
<<PR>> ネットワークセキュリティを見直しませんか
価格:300円
現役SEが語るSEの仕事あれこれ-これから就職を希望する人へ-
価格:300円