MySQL(その5 列に別名をつける、条件を指定してデータを取得する(as,where,演算子))

その4から続きます

1:列に別名をつける

例)商品一覧のname,priceをそれぞれ日本語で「名前」と「価格」に修正したい!

答え(asは省略できる)

select name as 名前,price as 価格 from products;

select name 名前,price 価格 from products;

2:列の値に対して演算を行う

例:商品一覧に税込価格を追加したい!

答え

select name 名前,price 価格, price * 1.10 税込価格 from products;

※ポイント

テーブルから抽出した結果をそのまま使うだけではなく計算した結果を出力することができる。

3:条件を指定してデータを取得する where句

例:価格が9800円以上の商品一覧が欲しい!

ヒント:必要な列は名前価格

答え

select name,price from products where price >= 9800;

※補足:代表的な演算子

=等しい
> より大きい
>=以上
< より小さい
<= 以下
<> または!= 等しくない
in ある値が値セット内に含まれているかどうか
not in 値が値セット内に含まれていないかどうか
is null  値がnull かどうか
is not null 値が null ではないかどうか
like パターンマッチング(あいまい検索 )
between・・・and・・・ 値が値の範囲内に収まっているか

練習問題

1)products テーブルから全件取得

select * from products;

2)idが1の行を取得

select * from products where id =1;

3)名前が「商品0003」の行を取得

select * from products where name ='商品0003';

4)priceが1000より大きい行を取得

select * from products where price > 1000;

5)priceが1000より小さい行を取得

select * from products where price < 1000;

6)priceが100でない行を取得

select * from products where price <> 1000;

7)別解

select * from products where price != 1000;

8)idが1か2か3の行を取得

select * from products where price id in(1,2,3);

9)idが1か2か3ではない行を取得

select * from products where price id not in(1,2,3,);

10)priceがnullではない行を取得

select * from products where price is not null;

11)priceがnullの行を取得

select * from products where price is null;

12)priceが1000から1900の行を取得

select * from products where price between 1000 and 1900;

13)これは次のようにand(論理積)を使ってもかける

select * from products where price >=1000 and price <= 1900;

14)価格が1000円または2000円の行を取

select * from products where price = 1000 or price =2000;

その6に続きます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です