/*1、建立成績表,字段包括:學生姓名,語文成績,數學成績,英語成績
向表中插入多條資料;
查詢:(1) 查詢所有學生的數學成績和總成績
(2) 查詢所有學生的語文和數學成績和,按從高到低排序
(3) 查詢班級總成績最高的學生姓名
(4) 查詢班裡所有姓李學生的總成績最高的姓名
*/-- 建立表
create table examres(
id int primary key auto_increment,
name varchar(20),
chinese float(5,2),
math float(5,2),
english float(5,2)
);-- 插入資料
insert into examres (name, chinese, math, english) values ('egon',61.2,75.3,88),
('alex',75,86,83),
('yuanhao',98,96,50),
('wupeiqi',86,90,87),
('buer',100,100,100);
-- (1) 查詢所有學生的數學成績和總成績
select math,sum(chinese+math+english) as toal_score from examres group by math;
-- (2) 查詢所有學生的語文和數學成績和,按從高到低排序 -- 不能新增name 或 *
select sum(chinese+math) from examres group by chinese+math order by chinese+math desc;
-- (3) 查詢班級總成績最高的學生姓名
select name,max(chinese+math+english) from examres group by name order by max(chinese+math+english) desc limit 1;
select name,sum(chinese+math+english) as toal_score from examres group by name order by sum(chinese+math+english) desc limit 1;
select name,chinese+math+english as toal_score from examres where chinese+math+english=(select max(chinese+math+english) from examres);
-- (4) 查詢班裡所有姓李學生的總成績最高的姓名
alter table examres character set utf8;
select name,chinese+math+english as toal_score from examres where name like 'e%' order by chinese+math+english desc limit 1;
/*2、建立一張某超市的購物表,字段包括:商品名,購物**,商品生茶日期,商品分類;
向該表中插入多條資料;
查詢:(1)每一類商品花的總**
(2)統計每類商品各有多少件
(3)統計水果花了多少錢(兩種方式實現)
(4)統計購買的2017-01-12日生產的商品中**最貴的商品(插入的資料中包括2017-01-12生產的商品)
(5)統一購買商品的總**
*/-- 建立表
create table goods_list(
id int primary key auto_increment,
name varchar(20),
price float(6,2),
pro_date date,
class varchar(20)
) character set utf8;
-- 插入值
insert into goods_list (name, price, pro_date, class) values ('蘋果',20,20170612,'水果'),
('香蕉',800,20170602,'水果'),
('水壺',120,20170612,'電器'),
('被罩',70,20170612,'床上用品'),
('音響',420,20170612,'電器'),
('床單',55,20170612,'床上用品'),
('士多啤梨',34,20170612,'水果');
-- (1)每一類商品花的總**
select class,sum(price) from goods_list group by class;
-- (2)統計每類商品各有多少件
select class,count(price) from goods_list group by class;
-- (3)統計水果花了多少錢(兩種方式實現)
select class,sum(price) from goods_list where class='水果' group by class;
select sum(price) from goods_list where price in (select price from goods_list where class='水果');
-- (4)統計購買的2017-06-12日生產的商品中**最貴的商品(插入的資料中包括2017-01-12生產的商品)
select id,name,price,pro_date from goods_list where pro_date=20170612 order by price desc limit 1;
-- (5)統一購買商品的總**
select sum(price) as toal_price from goods_list;
資料庫操作練習5
題目描述 將id 5以及emp no 10001的行資料替換成id 5以及emp no 10005,其他資料保持不變,使用replace實現。create table if not exists titles test id int 11 not null primary key,emp no in...
資料庫表 庫操作
一 庫的管理 1 建立庫 create database if not exist 庫名 2 庫的修改 rename database 舊庫名 to 新庫名 修改資料庫的字符集 alter database 資料庫名稱 character set 字符集名稱 3 庫的刪除 drop database...
資料庫操作 建立表 操作表
一般有兩種建立表的方法 1.使用具有互動式建立和管理表的工具 2.使用mysql語句。利用create table建立表,必須給出下列訊息 1.表的名字,在關鍵字create table之後給出 2.表列的名字和定義,用逗號分隔。create table customers cust id int ...