導入
「商品の税込価格が見たい」と思ったとき、わざわざ電卓を叩く必要はありません。SELECT の列を書く場所には、列名だけでなく計算式を書けます。そして計算結果の列に、AS で分かりやすい名前(別名)を付けられます。
説明
列を並べるところに price * 1.1 のような式を書くと、その計算結果が1つの列として出てきます。四則演算 + - * / がそのまま使えます。
SELECT name, price, price * 1.1 AS price_with_tax FROM products;
AS price_with_tax が 別名(エイリアス) です。付けないと列名が「price * 1.1」という式そのままになって読みにくいので、計算列には名前を付けるのが基本です(AS は省略して price * 1.1 price_with_tax とも書けますが、AS を付けたほうが明確です)。
flowchart LR
P["price(元の列)<br/>3200"] -->|"× 1.1 して別名を付ける"| T["price_with_tax<br/>3520.0"]
小数がじゃまなら、round(式, 桁数) で丸められます。round(price * 1.1) なら整数に、round(price * 1.1, 0) も同様です。
SELECT name, round(price * 1.1) AS price_with_tax FROM products;
別名は列だけでなくテーブルにも付けられます(FROM products AS p のように)。長いテーブル名を短くしたり、JOIN で表を区別したりするときに使いますが、まずは「計算列に名前を付ける」用途から慣れましょう。
やってみよう
初期表示のクエリを実行し、price_with_tax 列に税込価格(元の1.1倍)が出ることを確認しましょう。次に round(price * 1.1) に書き換えて、小数が消えて整数になることを見てください。
演習
products から、商品名 name と、**在庫価値(price × stock)**を stock_value という別名で取り出してください。
ヒント1を見る
掛け算は price * stock、別名は AS stock_value です。
ヒント2を見る
SELECT name, price * stock AS stock_value FROM products;