SQLでは、数値列に対して+(プラス)や−(マイナス)などの算術演算子を利用した柔軟な計算処理を行うことができます。以下のような算術演算子が利用可能です。
次のサンプルでは、ReorderPointという列に対し、1.2を乗算した値を取得しています。
SELECT ProductID,ReorderPoint * 1.2 AS NewReorderPoint FROM Production.Product |
サンプルでは演算結果に対し別名(NewReorderPoint)を付与しています。演算を行った場合、元の列名は結果に引き継がれないため、列名が「列名なし」となってしまう点に注意してください。
さて、ここからはSELECT文の主役ともいえる「WHERE」句によるデータの絞り込みを取り上げます。
これまでのサンプルでは、データを常に全件取得していました。単純にデータを見るだけであれば問題はありませんが、特定のデータを抽出したい、という場合はWHERE句を利用します。WHERE句を利用した構文は次のとおりです。
SELECT 列名 FROM テーブル名 WHERE 条件 …… |
WHERE句で条件を指定する際には、次のような比較演算子を利用します。
また、WHERE句では複数の条件を指定できます。その場合は論理演算子を利用します。
次のサンプルでは、Color列の値が「Silver」か「Black」、なおかつReorderPoint列の値が500以上、という条件で絞り込んでいます。
SELECT ProductID,Name FROM Production.Product WHERE (Color = 'Silver' OR Color = 'Black') AND ReorderPoint >= 500 |
論理演算子では「()」カッコを使用することで評価順を変更できます。WHERE句に複数の論理演算子が使われている場合、ANDが最初に評価されるので注意してください。上記のサンプルからカッコを外すと、Color列がBlackかつReorderPoint列が500以上の行、もしくはColor列がSilverの行、という絞り込みが行われます。
Copyright © ITmedia, Inc. All Rights Reserved.