1.2 算術演算子

SQLでは、検索した結果に計算を加えたり、また計算結果を元に検索することができます。ここでは計算に用いる基本的な算術演算子の使用方法について学習します。

1.2.1 検索結果を計算する

まずは検索結果に計算を加える方法です。基本構文は下記の通りです。

    SELECT 列名または数値 算術演算子 列名または数値 FROM テーブル名 (必要によりWHERE句)

算術演算子には下記のものがあります。

演算子 使用例 意味
+ a+b aとbを足す
a-b aからbを引く
* a*b aとbをかける
/ a/b aをbで割る
% a%b aをbで割った余り

「bookinfo」テーブルの価格を税込みで表示してみましょう。

    SELECT isbn,title,price*1.1 FROM bookinfo;

となります。

isbn title price * 1.1
00001 SQL入門テキスト 1050 * 1.1 = 1155.0
00002 SQL基礎テキスト 2300 * 1.1 = 2233.0
00003 Java基礎テキスト 1050 * 1.1 = 1155.0
00004 PHP基礎テキスト 2100 * 1.1 = 2310.0
00005 Java Struts基礎テキスト 3800 * 1.1 = 4180.0
00006 Android基礎テキスト 2000 * 1.1 = 2200.0
00007 NULL 2800 * 1.1 = 3080.0

1.2.2 計算結果を元に検索する

SQLでは、WHERE句の中に算術演算子を記述することができます。先程は計算結果に消費税計算を加えていましたが、今度は税込みの価格が2200円以上のデータを検索してみましょう。

    SELECT * FROM bookinfo WHERE price*1.1 >= 2200;

isbn title price * 1.1 price*1.1 >= 2200
00001 SQL入門テキスト 1050 * 1.1 = 1155.0 ×
00002 SQL基礎テキスト 2300 * 1.1 = 2233.0
00003 Java基礎テキスト 1050 * 1.1 = 1155.0 ×
00004 PHP基礎テキスト 2100 * 1.1 = 2310.0
00005 Java Struts基礎テキスト 3800 * 1.1 = 4180.0
00006 Android基礎テキスト 2000 * 1.1 = 2200.0
00007 NULL 2800 * 1.1 = 3080.0

「WHERE」句で計算した結果は、「SELECT」句の検索結果とは無関係なので注意しましょう。
計算結果表示させたい場合は、「SELECT」句でも計算する必要があります。