XAMPP　　CRUD(create文、insert文）　CRUD(select文、update文、delete文）ソート（並べ替え）　データの集計

create table drinklist
(
  drink_id int(11),
  name varchar(255),
  price int(11),
  number int(11)
);

desc drinklist;

insert into drinklist
values
  (1, "オレンジジュース", 150, 5),
  (2, "アップルジュース", 130, 4),
  (3, "ミネラルウォーター", 80, 7),
  (4, "コーラ", 120, 6);

select *
from drinklist;

create table user_table
(
  user_id int(11),
  name varchar(255),
  age int(11),
  tel varchar(255),
  mail varchar(255)
);


desc user_table;


insert into custmor_data
values
  ("1", "山田太郎", "y.taro@gmail.com", "03-1511-3333"),
  ("2", "佐藤花子", "h.sato@yahoo.co.jp", "090-7724-8842"),
  ("3", "田中次郎", "tziro@gmail.com", "080-8824-4445"),
  ("4", "鈴木三郎", "sabuszk@gmail.com", "090-2224-8424");

select *
from customer_data;

insert into customer_data
values
  ("1", "山田太郎", "y.taro@gmail.com", "03-1511-3333"),
  ("2", "佐藤花子", "h.sato@yahoo.co.jp", "090-7724-8842"),
  ("3", "田中次郎", "tziro@gmail.com", "080-8824-4445"),
  ("4", "鈴木三郎", "sabuszk@gmail.com", "090-2224-8424");

select *
from customer_data;

-- CRUD(select文、update文、delete文）

select name
from addresslist;

select mail
from addresslist
where prefecture="千葉";

pdate addresslist
set prefecture
= "埼玉" where user_id = 1;
-- 上書き変更

-- 写経　すべてのカラムを抽出
select *
from customer_data;

select *
from customer_data
where id =1;

-- idが1のデータのみを抽出

select name
from customer_data;
-- nameのカラムのみをすべて抽出

select name, mail
from customer_data;
-- nameとmailのララムのみをすべて抽出

select name, mail
from customer_data
where id >=3;
-- idが3以上のnameとmailのカラムのみすべて抽出

select *
from customer_data
where mail  like "%@gmail.com%";
-- mailに@gmail.comが含まれるデータをすべて抽出。

update customer_data set tel ="03-0000-0000" where id =1;

select *
from customer_data;

-- telを03-0000-0000に変更

delete from customer_data where id=2;
select *
from customer_data;
-- customer_dataからid=2のデータを削除

select *
from user;
-- 練習問題　userからすべてのデータを抽出してください

select *
from user
where userid =4;
-- useriが４のデータのみを抽出

select mail
from user;
-- mailのカラムのみを抽出

select name, mail
from user;
-- nameとmailのカラムのみを抽出

select *
from user
where userid >= 2;
-- useridが2以上のデータを抽出してください

select *
from user
where name like "%子%";
-- 子が含まれるユーザを抽出

update user set mail ="taro@yahoo.co.jp" where userid =1;

select *
from user;
-- userのuserid=1のmailをtaro@yahoo.co.jp

delete from user where userid = 4;

select *
from user;
-- userid =4のデータ削除後　すべてのデータを抽出

-- ソート(並び替え)
-- すべのデータを抽出しnumberの小さい順に並び変える
select *
from fruit_stock
order by number asc;

-- すべてのデータを抽出し、numberの大きい順に並び変える
select *
from fruit_stock
order by number asc;

-- fruitとpriceのカラムのみを抽出し、priceの小さい順に並び変える。
select fruit, price
from fruit_stock
order by price asc;
-- priceeの小さい順に並び変える　すべてのデータから
select *
from fruit_stock
order by price asc;
-- すべてのデータを抽出　numberの大きい順
select *
from fruit_stock
order by number desc;
-- fruitとpriceのデータのみ　priceの大きい順
select fruit, price
from fruit_stock
order by price desc;
-- データの集計
-- テーブルfruit_stockから、fruitが何件あるかを集計
select count(fruit)
from fruit_stock;
-- fruit_stockからアメリカ産のfruitが何件あるかを集計。
select count(fruit)
from fruit_stock
where madein="アメリカ";
-- id3以上のnumberの合計がいくつかを集計.
select sum(number)
from fruit_stock
where id >=3;
-- fruit_stockから、一番高いpriceを抽出する。
select max(price)
from fruit_stock;
-- fruit_stockからpriceの平均値を出す
select avg(price)
from fruit_stock;
-- fruit_stockからidが何件あるかを集計
select count(id)
from fruit_stock;
-- fruit_stockからフィリピン産のfruitが何件あるかを集計
select count(fruit)
from fruit_stock
where madein="フィリピン";
-- 日本産のnumberの合計がいくつかを集計
select sum(number)
from fruit_stock
where madein="日本";
-- 一番安いpriceを抽出する。
select min(price)
from fruit_stock;
-- 一番大きなnumber
select max(number)
from fruit_stock;
-- fruit_stockからpriceの平均値を出す
select avg(price)from fruit_stock;