《MySQL數據操作與查詢》- 返校複習課練習題,創建數據庫user_system,創建數據表user及user_ext

一、其它(共18題,100分)

1、創建數據庫user_system

CREATE DATABASE user_system

2、在數據庫user_system中創建數據表user及user_ext,其中user是用戶表,user_ext是用戶擴展表。表結構如下所示:

-- 創建user用戶表
CREATE TABLE user(
	id INT PRIMARY KEY auto_increment,
	name VARCHAR(20) NOT NULL,
	score DECIMAL(4,1),
	sex VARCHAR(2)
);
-- 創建user_est用戶擴展表
CREATE TABLE user_ext(
	id INT PRIMARY KEY auto_increment,
	age INT NOT NULL,
	height DECIMAL(4,1),
	weight DECIMAL(4.1)
);

3、在數據表user和user_ext中添加數據,添加的數據如下所示:

爲方便大家快速插入數據,給出相應的值列表:

(1,'小明',100,'男');

(2,'小紅',98,'女');

(3,'小聰',80,'男');

(4,'小亮',60,'男');

(5,'小偉',98,'女');

(6,'小琳',92,'女');

單條插入語法:

INSERT INTO user VALUES (1,'小明',100,'男');
INSERT INTO user VALUES (2,'小紅',98,'女');
INSERT INTO user VALUES (3,'小聰',80,'男');
INSERT INTO user VALUES (4,'小亮',60,'男');
INSERT INTO user VALUES (5,'小偉',98,'女');
INSERT INTO user VALUES (6,'小琳',92,'女');

多條插入語法:

INSERT INTO user VALUES
(1,'小明',100,'男'),
(2,'小紅',98,'女'),
(3,'小聰',80,'男'),
(4,'小亮',60,'男'),
(5,'小偉',98,'女'),
(6,'小琳',92,'女');

(1,11,135,40);

(2,9,145,30);

(3,10,134,38);

(4,11,142,45);

(5,12,139,32);

(6,11,140,33);

(7,14,160,45);

單條插入語法:

INSERT INTO user_ext VALUES (1,11,135,40);
INSERT INTO user_ext VALUES (2,9,145,30);
INSERT INTO user_ext VALUES (3,10,134,38);
INSERT INTO user_ext VALUES (4,11,142,45);
INSERT INTO user_ext VALUES (5,12,139,32);
INSERT INTO user_ext VALUES (6,11,140,33);
INSERT INTO user_ext VALUES (7,14,160,45);

多條插入語法:

INSERT INTO user_ext VALUES
(1,11,135,40),
(2,9,145,30),
(3,10,134,38),
(4,11,142,45),
(5,12,139,32),
(6,11,140,33),
(7,14,160,45);

在user表中添加外鍵約束:

ALTER TABLE user ADD CONSTRAINT id_fk FOREIGN KEY(id) REFERENCES user_ext(id)

4、在user表中修改“小聰”的成績爲“88”

UPDATE user SET score=88 WHERE name='小聰'

5、在user_ext表中刪除編號爲“7”的記錄

DELETE FROM user_ext WHERE id=7

6、查詢表user的所有內容

SELECT * FROM user;

7、查詢出來user表中成績大於80的所有數據

SELECT * FROM user WHERE score>80

8、查詢表user中性別爲'男'的所有內容

SELECT * FROM user WHERE sex='男'

9、查詢表user中姓名開頭不是爲'小'字的內容

SELECT * FROM user WHERE name NOT LIKE '小%'

10、查詢表user中姓名包含'聰'字的所有內容

SELECT * FROM user WHERE name LIKE '%聰%'

11、查詢表user 中成績爲98,60,92的所有內容

SELECT * FROM user WHERE score IN(98,60,92)

12、查詢表user中成績大於95 或者性別爲女性的所有內容

SELECT * FROM user WHERE score>95 OR sex='女'

13、獲取表user中字段成績大於60的內容數量

SELECT COUNT(*) FROM user WHERE score>60

14、獲取表user中成績的平均值

SELECT avg(score) 平均成績 FROM user

15、獲取表user中成績的總分數

SELECT sum(score)總分數 FROM user

16、獲取表user_ext中所有不同的字段 age ,並設置字段別名爲'年齡'

SELECT DISTINCT(age)年齡 FROM user_ext;

17、獲取表user_ext中的所有數據並且按照字段體重進行倒序排序

SELECT * FROM user_ext ORDER BY weight DESC

18、通過左連接 獲取表 user(別名t1) 和表 user_ext(別名t2) 中字段 id 相同的數據,其中字段 age 大於9,並僅返回 id、students、age、weight 這幾個字段的數據

SELECT t1.id,name,age,weight FROM user t1 LEFT JOIN user_ext t2 ON t1.id=t2.id

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章