資料庫表操作練習

2022-09-18 10:12:30 字數 2935 閱讀 4813

/*

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 ...