MYsql命令練習(xí)11-18

mysql命令練習(xí)題3
代碼塊
-- 1.創(chuàng)建test數(shù)據(jù)庫
CREATE DATABASE test CHARACTER set utf8

use test

-- 2.在test數(shù)據(jù)庫中創(chuàng)建emp表户矢,表結(jié)構(gòu)如下圖所示(id設(shè)置為主鍵自增長)
CREATE table emp(
    empno int(11) PRIMARY key auto_increment not null,
    ename VARCHAR(50),
    job VARCHAR(50),
    mgr int DEFAULT null,
    hiredate date,
    sal DECIMAL(7,2),
    comm DECIMAL(7,2) DEFAULT null,
    deptno int(11)
)

-- 3.向emp表中添加記錄如下圖所示
insert into emp VALUES(1001,"甘寧","文員",1013,"2000-12-17",8000.00,DEFAULT,20),
        (1002,"黛綺絲","銷售員",1006,"2001-02-20",16000.00,3000.00,30),
        (1003,"殷天正","銷售員",1006,"2001-02-22",12500.00,5000.00,30),
        (1004,"劉備","經(jīng)理",1009,"2001-04-02",29750.00,DEFAULT,20),
        (1005,"謝遜","銷售員",1006,"2001-09-28",12500.00,14000.00,30),
        (1006,"關(guān)羽","經(jīng)理",1009,"2001-05-01",28500.00,DEFAULT,30),
        (1007,"張飛","經(jīng)理",1009,"2001-09-01",24500.00,DEFAULT,10),
        (1008,"諸葛亮","分析師",1004,"2007-04-19",30000.00,DEFAULT,20),
        (1009,"曾阿牛","董事長",DEFAULT,"2001-11-17",50000.00,DEFAULT,10),
        (1010,"韋一笑","銷售員",1006,"2001-09-08",15000.00,0.00,30),
        (1011,"周泰","文員",1008,"2007-05-23",11000.00,DEFAULT,20),
        (1012,"程普","文員",1006,"2001-12-03",9500.00,DEFAULT,30),
        (1013,"龐統(tǒng)","分析師",1004,"2001-12-03",30000.00,DEFAULT,20),
        (1014,"黃蓋","文員",1007,"2002-01-23",13000.00,DEFAULT,10),
        (1015,"張三","文員",1007,"2002-01-23",53000.00,DEFAULT,50)

-- 1查詢表中所有內(nèi)容(10分)
select * from emp

-- 2.查詢表中姓名是張三的所有消息記錄(10分)
select * from emp  where ename ="張三"

-- 3.查詢表中姓名是三個字組成的所有員工的ename,job,sal字段的對應(yīng)信息(10分)
select * from emp where ename like '___'
select * from emp where ename like '曾%'
-- 4.查詢表中empno字段從1004至1008所有員工的記錄(10分)
select * from emp where mgr >1003 and mgr <1009

-- 5.查詢表中所有job字段是文員并且姓名是黃蓋的員工的所有信息(10分)
select * from emp where job ="文員" and  ename ="黃蓋"

-- 6.查詢表中在2001年以后入職的員工信息(10分)
select * from emp where hiredate  > "2001-1-1"

-- 7.查詢表中獎金(COMM)是NULL的員工信息(10分)

select * from emp where comm is null;

mysql命令練習(xí)題11
代碼塊
create table student(
        id int PRIMARY KEY auto_increment,
        name VARCHAR(20) not null,
        score int not null,
        address VARCHAR(50) not null,
        useremail varchar(20) not null
)
insert into student values(1,'張三',98,'北京','111111@qq,com'),
(2,'李四',88,'上海','111112@qq.com'),(3,'王五',78,'廣州','111113@qq.com'),
(4,'趙六',68,'深圳','111114@qq.com'),(5,'孫七',58,'杭州','111115@qq.com'),
(6,'小紅',48,'北京','111116@qq.com'),(7,'小黑',99,'上海','111117@qq.com'),
(8,'小綠',100,'杭州','111118@qq.com'),(9,'小粉',60,'杭州','111119@qq.com'),
(10,'小紫',70,'黑龍江','1111110@qq.com')

4.  使用sql語句查詢出表中的所有內(nèi)容
SELECT * FROM student 
5.  使用sql語句查詢出表中所有score>70的同學(xué)的id,name,score
SELECT * FROM student WHERE score>70

6.  更改name字段的數(shù)據(jù)類型為varchar(50)
    ALTER TABLE student MODIFY name varchar(50)

7.  向表中添加一個字段,字段名稱為“pingjia”,字段類型為varchar(20)
ALTER TABLE student add pringjia varchar(20)

8.  更改姓名是張三的同學(xué)的分?jǐn)?shù)為88
    UPDATE student set score= score -10 WHERE id =1

9.  如果80分為及格線锰茉,查詢出所有及格的同學(xué)的詳細信息
 SELECT * from  student WHERE score >79

10. 把姓名是“小紅”的同學(xué)的分?jǐn)?shù)在原來的基礎(chǔ)上+40
    UPDATE student set score = score +40 WHERE id =6

11. 使用關(guān)鍵字in,查詢id值是1或5或7的同學(xué)的基本信息
        SELECT * FROM student WHERE id =1 or id =5 or id=7
SELECT * FROM student WHERE id in("1","5","7")

12. 查詢id值在5至8的所有同學(xué)的基本信息
 SELECT * FROM student WHERE id between 5 and 8
 SELECT * FROM student WHERE  id>4 and id<9

13. 查詢姓名是小紅并且分?jǐn)?shù)大于60的同學(xué)的基本信息
SELECT * FROM student WHERE name = "小紅" and  score >60

14. 查詢姓名是小紅或者分?jǐn)?shù)大于90的同學(xué)的基本信息
SELECT * FROM student WHERE name = "小紅" or score >90

15. 查詢score字段值是NULL的同學(xué)的基本信息
SELECT * FROM student WHERE score is NOT null

16. 查詢score字段值不是NULL的同學(xué)的id和name
SELECT id,name FROM student WHERE score is NOT null 
mysql命令練習(xí)題12
代碼塊
create table studentx(
        id int PRIMARY KEY auto_increment,
        name VARCHAR(20) not null,
        score int not null,
        address VARCHAR(50) not null,
        useremail varchar(20) not null
)
insert into studentx values(1,'張三',98,'北京','111111@qq,com'),
(2,'李四',88,'上海','111112@qq.com'),(3,'王五',78,'廣州','111113@qq.com'),
(4,'趙六',68,'深圳','111114@qq.com'),(5,'孫七',58,'杭州','111115@qq.com'),
(6,'小紅',48,'北京','111116@qq.com'),(7,'小黑',99,'上海','111117@qq.com'),
(8,'小綠',100,'杭州','111118@qq.com'),(9,'小粉',60,'杭州','111119@qq.com'),
(10,'小紫',70,'黑龍江','1111110@qq.com')


4.  使用sql語句查詢出表中id,name,和address字段的所有內(nèi)容
     SELECT id,name,address FROM studentx

5.  使用sql語句查詢出表中所有同學(xué)的id,name,score
     SELECT id,name,score FROM studentx

6.  更改useremail字段的數(shù)據(jù)類型為varchar(50)
   ALTER TABLE studentx MODIFY useremail varchar(50)

7.  向表中添加一個字段,字段名稱為“pingjia”,字段類型為varchar(20)
   ALTER TABLE studentx add pingjia varchar(20)

8.  更改姓名是張三的同學(xué)的分?jǐn)?shù)為92
   UPDATE studentx set score = score-6 WHERE id =1
    SELECT * FROM studentx

9.  如果80分為及格線恕曲,查詢出所有不及格的同學(xué)的詳細信息
   SELECT * FROM studentx WHERE score <80 

10. 把姓名是“小紅”的同學(xué)的分?jǐn)?shù)在原來的基礎(chǔ)上+20
        UPDATE studentx set score=score+20 WHERE name= "小紅"

11. 使用關(guān)鍵字in,查詢id值是1或5或7的同學(xué)的基本信息
    SELECT * FROM studentx WHERE id in("1","5","7")

12. 查詢id值在4至9的所有同學(xué)的基本信息
        SELECT * FROM studentx WHERE id BETWEEN 4 and 9

13. 查詢姓名是小紅并且分?jǐn)?shù)大于60的同學(xué)的基本信息
        SELECT * FROM studentx WHERE name="小紅" and score >60

14. 查詢姓名是小紅或者分?jǐn)?shù)大于90的同學(xué)的基本信息
    SELECT * FROM studentx WHERE name="小紅" or score >90

15. 查詢score字段值是NULL的同學(xué)的基本信息
        SELECT * FROM studentx WHERE score is NOT null

16. 查詢name不是張三的同學(xué)的id鹏氧,name,和score
        SELECT id, name,score FROM studentx WHERE name!="張三" 
mysql命令練習(xí)題13
代碼塊
create table studentxx(
        id int PRIMARY KEY auto_increment,
        name VARCHAR(20) not null,
        score int not null,
        address VARCHAR(50) not null,
        useremail varchar(20) not null
)
insert into studentxx values(1,'張三',98,'北京','111111@qq,com'),
(2,'李四',88,'上海','111112@qq.com'),(3,'王五',78,'廣州','111113@qq.com'),
(4,'趙六',68,'深圳','111114@qq.com'),(5,'孫七',58,'杭州','111115@qq.com'),
(6,'小紅',48,'北京','111116@qq.com'),(7,'小黑',99,'上海','111117@qq.com'),
(8,'小綠',100,'杭州','111118@qq.com'),(9,'小粉',60,'杭州','111119@qq.com'),
(10,'小紫',70,'黑龍江','1111110@qq.com')

4.  使用sql語句查詢出表中的所有內(nèi)容
        SELECT * FROM studentxx

5.  使用sql語句查詢出表中所有同學(xué)的id,name,score
        SELECT id,name,score FROM studentxx

6.  更改name字段的數(shù)據(jù)類型為varchar(50)
        ALTER TABLE studentxx MODIFY name varchar(50)

7.  向表中添加一個字段佩谣,字段名稱為“pingjia”,字段類型為varchar(50)
        ALTER TABLE studentxx add pingjia varchar(50)

8.  更改姓名是小紫的同學(xué)的分?jǐn)?shù)為100
        UPDATE studentxx set score = score+30 WHERE name = "小紫"
    
9.  如果80分為及格線把还,查詢出所有及格的同學(xué)的詳細信息
        SELECT * FROM studentxx WHERE score>80
        
10. 把姓名是“小紅”的同學(xué)的分?jǐn)?shù)在原來的基礎(chǔ)上+30
        UPDATE studentxx set score = score+30 WHERE name = "小紅"

11. 使用關(guān)鍵字in,查詢id值是2或4或8的同學(xué)的基本信息
        SELECT * FROM studentxx WHERE id in("2","4","8")
        
12. 查詢id值在5至8的所有同學(xué)的基本信息
        SELECT * FROM studentxx WHERE id BETWEEN 5 and 8
        
13. 查詢姓名是小紅并且分?jǐn)?shù)大于60的同學(xué)的基本信息
        SELECT * FROM studentxx WHERE name="小紅" AND score>60

14. 查詢姓名是小紅或者分?jǐn)?shù)大于90的同學(xué)的基本信息
        SELECT * FROM studentxx WHERE name="小紅" or score>90

15. 查詢score字段值是不為NULL的同學(xué)的基本信息
        SELECT * FROM studentxx WHERE score is not null

16. 查詢id值在6至8的同學(xué)的name和score
        SELECT id,name,score FROM studentxx WHERE id BETWEEN 6 AND 8
mysql命令練習(xí)題14
代碼塊
create table studenta(
        id int PRIMARY KEY auto_increment,
        name VARCHAR(20) not null,
        score int not null,
        address VARCHAR(50) not null,
        useremail varchar(20) not null
)
insert into studenta values(1,'張三',98,'北京','111111@qq,com'),
(2,'李四',88,'上海','111112@qq.com'),(3,'王五',78,'廣州','111113@qq.com'),
(4,'趙六',68,'深圳','111114@qq.com'),(5,'孫七',58,'杭州','111115@qq.com'),
(6,'小紅',48,'北京','111116@qq.com'),(7,'小黑',99,'上海','111117@qq.com'),
(8,'小綠',100,'杭州','111118@qq.com'),(9,'小粉',60,'杭州','111119@qq.com'),
(10,'小紫',70,'黑龍江','1111110@qq.com')

4.  使用sql語句查詢出表中的所有內(nèi)容
        SELECT * from studenta

5.  使用sql語句查詢出表中所有同學(xué)的id,name,score
        SELECT id,name,score from studenta
6.  更改useremail字段的數(shù)據(jù)類型為varchar(50)
        ALTER TABLE studenta MODIFY useremail varchar(50)

7.  向表中添加一個字段,字段名稱為“pingjia”,字段類型為varchar(20)
        ALTER TABLE studenta add  pingjia varchar(50)

8.  更改姓名是李四的同學(xué)的分?jǐn)?shù)為48
        UPDATE studenta set  score =48 WHERE name ="李四"

9.  如果80分為及格線茸俭,查詢出所有不及格的同學(xué)的詳細信息
        SELECT * from studenta WHERE score< 80 

10. 把姓名是“小紅”的同學(xué)的分?jǐn)?shù)在48的基礎(chǔ)上+40
        UPDATE studenta set score= score+40 WHERE name="小紅"

11. 使用關(guān)鍵字in,查詢id值是3或9或10的同學(xué)的基本信息
        SELECT * from studenta WHERE id in("3","9","10")

12. 查詢id值在2至6的所有同學(xué)的基本信息
        SELECT * from studenta WHERE id BETWEEN 2 and 6

13. 查詢姓名是小紅并且分?jǐn)?shù)大于60的同學(xué)的基本信息
        SELECT * from studenta WHERE name="小紅" and  score>60

14. 查詢姓名是張三或者分?jǐn)?shù)大于90或者address字段值是杭州的同學(xué)的基本信息
        SELECT * from studenta WHERE name="張三" or score>90 or address ="杭州"

15. 查詢score字段值是NULL的同學(xué)的基本信息
        SELECT * from studenta WHERE score is not null 

16. 查詢score的值在68-80的同學(xué)的id和name
        SELECT id,name,score from studenta WHERE score>67 and score<81
mysql命令練習(xí)題15
代碼塊
-- 創(chuàng)建db_test數(shù)據(jù)庫

CREATE DATABASE db_testx CHARSET='utf8'
use db_testx

-- 在test數(shù)據(jù)庫中創(chuàng)建teacher表吊履,表結(jié)構(gòu)如下圖所示(id設(shè)置為主鍵自增長)
CREATE TABLE teacher(
Number int PRIMARY KEY auto_increment,
Name VARCHAR(30),
Sex enum('男','女'),
DepNo int,
Salary int,
Address VARCHAR(30) 
)

-- 向teacher表中添加記錄如下圖所示

INSERT INTO teacher VALUES(201,'劉蕓','女',604,4500,'河北省滄州'),
(202,'周星馳','男',601,1600,'山東省濟南'),
(203,'秦牧之','男',604,2800,'北京昌平'),
(204,'周潤發(fā)','男',602,3500,'河北省滄州'),
(205,'林雙','女',605,1200,'河北省保定'),
(206,'張帆','女',602,3000,'北京市昌平'),
(207,'陳友涼','男',604,2800,'山西省大同'),
(208,'張國榮','男',601,2500,'山東省煙臺')

-- 修改表名為”TS”
alter table teacher rename ts

-- 向表中添加記錄,字段對應(yīng)值分別為(209调鬓,毛不易率翅,男,604袖迎,4000冕臭,黑龍江齊齊哈爾)
insert into ts(Number,Name,Sex,DepNo,Salary,Address) values(201,"劉蕓","女",604,4500,"河北省滄州")

-- 查詢TS表中所有記錄
select * from ts


-- 刪除表中Number是201并且sex是女的教師信息
DELETE FROM ts WHERE Number = 201 and Sex ="女"

-- 查詢表中Number字段的值是202,205或207教師的所有記錄
select * from ts WHERE Number in('202','205','207')

-- 修改表中Number值是202教師的姓名為“馬云”
update ts set Name ="馬云" where Number ="202" and Name = "周星馳"

-- 按照工資對員工信息進行降序排序
select * from ts  order by Salary desc, Name asc;

mysql命令練習(xí)題16
代碼塊
-- 在test數(shù)據(jù)庫中創(chuàng)建teacher表燕锥,表結(jié)構(gòu)如下圖所示(id設(shè)置為主鍵自增長)
CREATE TABLE teacher(
Number int PRIMARY KEY auto_increment,
Name VARCHAR(30),
Sex enum('男','女'),
DepNo int,
Salary int,
Address VARCHAR(30) 
)

-- 向teacher表中添加記錄如下圖所示
INSERT INTO teacher VALUES(201,'劉蕓','女',604,4500,'河北省滄州'),
(202,'周星馳','男',601,1600,'山東省濟南'),
(203,'秦牧之','男',604,2800,'北京昌平'),
(204,'周潤發(fā)','男',602,3500,'河北省滄州'),
(205,'林雙','女',605,1200,'河北省保定'),
(206,'張帆','女',602,3000,'北京市昌平'),
(207,'陳友涼','男',604,2800,'山西省大同'),
(208,'張國榮','男',601,2500,'山東省煙臺')

-- 修改表名為”TS”
alter table teacher rename tsx

-- 向表中添加記錄辜贵,字段對應(yīng)值分別為(209,林青霞归形,女托慨,604,4000暇榴,黑龍江齊齊哈爾)
insert into tsx(Number,Name,Sex,DepNo,Salary,Address) values (209,"林青霞","女",604,4000,"黑龍江齊齊哈爾")

-- 查詢TS表中Number,Name,Sex字段對應(yīng)的記錄
select Number,Name,Sex from tsx 


-- 刪除表中Number是201或者Name是陳友諒的教師信息
delete from tsx  where Number=201 or Name ="陳友涼"


-- 查詢表中Number字段的值從202至206教師的所有記錄
select * from tsx where Number >201 and Number <207
select * from tsx where Number BETWEEN 202 and 206
-- 修改表中Name值是張國榮教師的性別為“女”
update tsx set Sex = "女"  where Name="張國榮" and Sex="男"

-- 按照工資對員工信息進行升序排序
select * from tsx  order by Salary asc;

mysql命令練習(xí)題17
代碼塊
CREATE TABLE teacher(
Number int PRIMARY KEY auto_increment,
Name VARCHAR(30),
Sex enum('男','女'),
DepNo int,
Salary int,
Address VARCHAR(30) 
)

3.向teacher表中添加記錄如下圖所示
INSERT INTO tsxx VALUES(201,'劉蕓','女',604,4500,'河北省滄州'),
(202,'周星馳','男',601,1600,'山東省濟南'),
(203,'秦牧之','男',604,2800,'北京昌平'),
(204,'周潤發(fā)','男',602,3500,'河北省滄州'),
(205,'林雙','女',605,1200,'河北省保定'),
(206,'張帆','女',602,3000,'北京市昌平'),
(207,'陳友涼','男',604,2800,'山西省大同'),
(208,'張國榮','男',601,2500,'山東省煙臺')

alter table teacher rename TSxx

6.向表中添加記錄厚棵,字段對應(yīng)值分別為(209,林青霞蔼紧,女婆硬,604,4000奸例,黑龍江齊齊哈爾)
insert into tsxx VALUES (209,"林青霞","女",604,4000,"黑龍江齊齊哈爾")

select * from tsxx
7.向表中添加字段Hobby,設(shè)置類型為varchar(50),設(shè)置唯一約束
ALTER TABLE tsxx ADD  Hobby varchar(50) UNIQUE 

8.使用desc語句查看teacher表的表結(jié)構(gòu)
  DESC tsxx


9.查詢表中Number字段的值從202至206教師的所有記錄
    select * from tsxx WHERE Number>201 and Number<207
    select * from tsxx WHERE Number between 202 and 206

10.修改表中Name值是張國榮教師的性別為“女”
    UPDATE tsxx SET     Sex = "女" WHERE Name = "張國榮" and Sex="男"

11.刪除表中Sex是“男”或者Name是劉蕓的記錄
 delete from tsxx WHERE Name="劉蕓" or Sex = "男"

mysql命令練習(xí)題18
代碼塊
2.在test數(shù)據(jù)庫中創(chuàng)建teacher表彬犯,表結(jié)構(gòu)如下圖所示(id設(shè)置為主鍵自增長)
CREATE TABLE teacher(
Number int PRIMARY KEY auto_increment,
Name VARCHAR(30),
Sex enum('男','女'),
DepNo int,
Salary int,
Address VARCHAR(30) 
)

3.向teacher表中添加記錄如下圖所示
INSERT INTO teacher VALUES(201,'劉蕓','女',604,4500,'河北省滄州'),
(202,'周星馳','男',601,1600,'山東省濟南'),
(203,'秦牧之','男',604,2800,'北京昌平'),
(204,'周潤發(fā)','男',602,3500,'河北省滄州'),
(205,'林雙','女',605,1200,'河北省保定'),
(206,'張帆','女',602,3000,'北京市昌平'),
(207,'陳友涼','男',604,2800,'山西省大同'),
(208,'張國榮','男',601,2500,'山東省煙臺')


5.修改表名為”TEACHER”
ALTER TABLE teacher rename TEACHERX

6.向表中添加記錄,字段對應(yīng)值分別為(209查吊,林青霞谐区,女,604逻卖,4000宋列,黑龍江齊齊哈爾)
    INSERT INTO TEACHERX VALUES(209,"林青霞","女",604,4000,"黑龍江齊齊哈爾")

7.向表中添加字段Hobby,設(shè)置類型為varchar(50),設(shè)置唯一約束
    select * from TEACHERX
ALTER TABLE TEACHERX add Hobby varchar(50) UNIQUE


8.修改DepNo字段的類型為varchar(20)
   alter table TEACHERX change DepNo DepNo varchar(20)

9.查詢表中Number字段的值從202至206教師的所有記錄
 select * from TEACHERX WHERE Number BETWEEN 202 and 206
SELECT * from TEACHERX WHERE Number>201 and Number<207
10.修改表中Name值是張國榮教師的性別為“女”
    UPDATE TEACHERX set Sex ="女" WHERE Name ="張國榮" 
    
11.刪除表中Number是203或205或207的教師的記錄
DELETE FROM TEACHERX WHERE Number in("203","205","207") 
第二題
代碼塊
-- 學(xué)生
create table student(
    sno varchar(20) primary key,
    sname  varchar(10),
    ssex varchar(10),
    sbirthday datetime,
    class varchar(20)
        )

-- 課程
create table course(
    cno varchar(20),    
        cname varchar(20) not null,
        tno varchar(20) not null,
        foreign key(tno) references teacher(tno)
        );

-- 老師
create table teacher(
        tno varchar(20) primary key,
        tname varchar(20) not null,
        tsex varchar(20) not null,
        tbirthday datetime,
        pro varchar(20) not null,
        depart varchar(20) not null
        )

-- 成績
create table score(
        sno varchar(20) not null,
        cno varchar(20) not null,
        degree decimal
        
        )



select * from student;

select * from teacher;

select * from course;

select * from score;

student 數(shù)據(jù)

insert into student values
('108','曾華','男','1977-09-01','95033'),
("105","框玥","男",'1977-09-01','95031'),
("107","王麗","女",'1977-09-01','95033'),
("109","李軍","男",'1977-09-01','95033'),
("103","王芳","女",'1977-09-01','95031'),
("104","陸君","男",'1977-09-01','95031')

select * from student




score數(shù)據(jù)

103 3-245   86
109 6-166   81
105 1-105   79
104 1-105   89
106 6-166   89
107 3-245   64
102 3-105   89
101 3-105   89

insert into score values('103','3-245',86),('109','6-166',81),
('105','1-105',79),('104','1-105',79),('106','6-166',89),
('107','3-245',64),('102','3-105',89),('101','3-105',89)


teacher數(shù)據(jù)

804 李誠  男   1958-12-02 00:00:00 副教授 計算機系
856 張旭  男   1969-03-13 00:00:00 講師  電子工程系
825 王萍  女   1972-05-05 00:00:00 助教  計算機系
831 劉冰  女   1977-08-14 00:00:00 助教  電子工程系


insert into teacher values('804','李誠','男','1958-12-02 00:00:00','副教授','計算機系'),
                                                    ('856','張旭','男','1969-03-13 00:00:00','講師','電子工程系'),
                                                    ('825','王萍','女','1972-05-05 00:00:00','助教','計算機系'),
                                                    ('831','劉冰','女','1977-08-14 00:00:00','助教','電子工程系')

course數(shù)據(jù)


3-105   計算機導(dǎo)論825
3-245   操作系統(tǒng)    804
6-166   數(shù)字電路    856
9-888   高等數(shù)學(xué)    831

insert into course values('3-105','計算機導(dǎo)論','825'),
                                                    ('3-245','操作系統(tǒng)','804'),
                                                    ('6-166','數(shù)字電路','856'),
                                                    ('9-888','高等數(shù)學(xué)','831')





-簡單的查詢練習(xí):- 1-
1,查詢student表中的所有記錄
select * from student

2评也,檢查student表中的所有記錄的sname炼杖,Ssex和class戈鲁。
select sname,ssex,class from student

3、查詢老師所有的單位即不重復(fù)的depart列
select * from teacher group by depart

4.查詢socre表中成績在從68到80之間的記錄嘹叫。
select * from score where degree between 68 and 80

5.查詢score表成績中為85婆殿、86或88。-
select * from score where degree in (85,86,88)

6罩扇、查詢student表中“95031”班或性別為“女”同學(xué)的同學(xué)記錄
select * from student where class = 95031 or ssex = '女'

7.以class降序查詢student表的所有記錄
select * from student order by class desc

8.以cno升序婆芦。degree降序查詢score表的所有記錄
select * from score order by cno asc,degree desc

9、查詢“95031”班學(xué)生人數(shù)喂饥。
select count(*) from student where class = 95031

10消约、查詢score表中的最高分的學(xué)生學(xué)號和課程號(子查詢或者排序)
select sno,cno from score where degree = (select max(degree) from score)


--  11.查看每門課的平均成績 (分組查詢)
select cno,sum(degree)/count(degree) from score group by cno


--  12.查詢score表中至少有2名同學(xué)選修的并以3開頭的課程的平均分?jǐn)?shù) having(組級過濾)
select cno,avg(degree) from score where cno like '3%' group by cno having count(cno) > 1


-- 13.查詢分?jǐn)?shù)大于70,小于90的sno列(條件查詢)
select sno from score where degree between 70 and 90



-- 14.查詢所有學(xué)生的 sname,con,和degree 列员帮。(多表查詢)
select stu.sname,s.cno,s.degree from score as s inner join student as stu on s.sno = stu.sno



--  15.查詢所有學(xué)生的sno或粮,cname和degree
select s.sno,s.degree,c.cname from score as s inner join course as c on s.cno = c.cno



-- 16. 查詢所有學(xué)生的sname,cname和degree(三表聯(lián)查)
select stu.sname,c.cname,s.degree from student as stu inner join course as c inner join score as s on stu.sno = s.sno and s.cno = c.cno



17.查閱"95031"班學(xué)生每門課的平均分
select cno,AVG(degree) from score where sno in (select sno from student where class = '95031') group by cno


-- 18.查詢選修”3-105“課程的 成績高于”109“號同學(xué)成績的所有同學(xué)的記錄

-- 子查詢的練習(xí)

-- 1.先查詢”109“號同學(xué)成績
select degree from score where sno = 109


-- 2.第二步找到3-105課程成績高于109
select * from score where cno = '3-105' and degree > (select degree from score where sno = 109)




-- 19捞高。查詢成績高于學(xué)號109氯材,課程號為3-105的成績的所有記錄 子查詢
select * from score where cno = '3-105' and degree > (select degree from score where sno = 109)



-- 20.查詢和學(xué)號為108.101的同學(xué)同年出生的所有學(xué)生的son。sname和sbirthday
-- year的函數(shù)與帶in 關(guān)鍵字的子查詢
select sbirthday from student where sno in (108,101)
select sno,sname,sbirthday from student where year(sbirthday) = (select year(sbirthday) from student where sno in (108,101))

--21. 查詢”張旭“教師任課的學(xué)生成績

-- 寫這個的時候先理清表之間的關(guān)系  想好我們到底要查的是什么數(shù)據(jù) 在對表中的關(guān)系進行處理

-- 1.先查詢教師的id號
select tno from teacher where tname = '張旭'

-- 2.根據(jù)教師的id號來查詢課程id
select cno from course where tno = (select tno from teacher where tname = '張旭')

-- 3硝岗。查詢score表根據(jù)課程號查詢學(xué)生的分?jǐn)?shù)
select degree from score where cno = (select cno from course where tno = (select tno from teacher where tname = '張旭'))

第10題
代碼塊
1氢哮、功能描述

    1 創(chuàng)建一個班級表(classes),包含字段id,name
    
    2創(chuàng)建一個學(xué)生表(students),包含字段id,name,birthday,gender,score,class_id 

3 在班級表中添加三條記錄 id:1 name:一年級型檀,id:2 name:二年級冗尤,id:3 name:三年級 
    4 在員工表里添加六條記錄,

id:1 name:’張三’ birthday:”2010-11-10” gender:’男’ score:100 class_id:1
id:2 name:’李四’ birthday:”2012-11-10” gender:’女’ score:75 class _id:1
id:3 name:’王五’ birthday:”2014-11-10” gender:’男’ score:80 class _id:2
id:4 name:’小明’ birthday:”2013-11-10” gender:’女’ score:60 class _id:2
id:5 name:’小李’ birthday:”2015-11-10” gender:’女’ score:30 class _id:2
id:6 name:’小劉’ birthday:”2008-11-10” gender:’男’ score:90 class _id:3


5 使用pymysql模塊來查詢每個班級的平均分

如 一年級  100
   二年級  80
   三年級   70
6 修改張三的名字為張五

7 刪除班級名字為”三年級”的所有學(xué)生

8 查詢一年級分?jǐn)?shù)最高的人

9 查詢有學(xué)生的年級信息(用子查詢實現(xiàn))

10 查詢以‘小’開頭的名字為一個字學(xué)生

11查詢出生日期在2008-11-10到2012-11-10的學(xué)生


CREATE database db_test10

use db_test10

-- 創(chuàng)建班級表
CREATE TABLE classes (id int PRIMARY key auto_increment,name VARCHAR(20) not null)

-- 創(chuàng)建學(xué)生表
CREATE TABLE stu (
id int PRIMARY key auto_increment,
name VARCHAR(20) not null,
birthday date,
gender VARCHAR(20),
score int ,
class_id int)


-- 在班級表中添加數(shù)據(jù)
insert  into  classes values
(1,"一年級"),
(2,"二年級"),
(3,"三年級")


-- 在學(xué)生表中添加數(shù)據(jù)

insert into stu VALUES
(1 ,"張三","2010-11-10","男",100,1),
(2 ,"李四","2012-11-10","女",75,1),
(3 ,"王五","2014-11-10","男",80,2),
(4 ,"小明","2013-11-10","女",60,2),
(5 ,"小李","2015-11-10","女",30,2),
(6 ,"小劉","2008-11-10","男",90,3)

INSERT into stu VALUES(7 ,"小劉1","2008-11-10","男",90,3)

-- 添加外鍵胀溺,需要使用foreign key關(guān)鍵字
alter table stu add foreign key(class_id) references classes(id)


-- 5 使用pymysql模塊來查詢每個班級的平均分

-- 如 一年級  100
--    二年級  80
--    三年級   70
SELECT cla.name,avg(stu.score)as 平均分 from  stu  INNER JOIN classes as cla ON stu.class_id=cla.id GROUP BY  cla.name 


-- 6 修改張三的名字為張五
UPDATE stu set name='張五' WHERE name='張三'

SELECT* FROM stu
-- 7 刪除班級名字為”三年級”的所有學(xué)生
DELETE from stu WHERE class_id=(SELECT id FROM classes WHERE name="三年級")

SELECT * FROM stu 
-- 8 查詢一年級分?jǐn)?shù)最高的人
SELECT stu.name,MAX(score) FROM stu WHERE class_id=(SELECT id FROM classes WHERE name="一年級")

SELECT * FROM stu 

-- 9 查詢有學(xué)生的年級信息(用子查詢實現(xiàn))
SELECT id,name  from classes WHERE id in(SELECT class_id from  stu)

-- 10 查詢以‘小’開頭的名字為一個字學(xué)生
SELECT * from stu WHERE name like "小%"

-- 11查詢出生日期在2008-11-10到2012-11-10的學(xué)生
SELECT * from stu WHERE birthday  BETWEEN "2008-11-10" and "2012-11-10"


---------------------------------------------------------------------------

1裂七、  功能描述
    1 創(chuàng)建一個分類表(cate),包含字段id,name
2創(chuàng)建一個商品表(goods),包含字段id,name,number,create_time,price,cate_id 

3 在分類表中添加三條記錄 id:1 name:服裝仓坞,id:2 name:玩具背零,id:3 name:家電

4 在商品表里添加六條記錄,
id:1 name:’羽絨服’ create_time:”2010-11-10” number:10 price:”1.00” cate_id:1
id:2 name:’輕便服’ create_time:”2012-11-10” number:30  price:”2.00” cate _id:1
id:3 name:’汽車’ create_time:”2014-11-10” number:40  price:”2.00” cate _id:2
id:4 name:’公主’ create_time:”2013-11-10” number:50  price:”6.00” cate _id:2
id:5 name:’橡皮泥’ create_time:”2015-11-10” number:23 price:”3.50” cate _id:2
id:6 name:’電飯煲’ create_time:”2008-11-10” number:3 price:”3.00” cate _id:3

5 使用pymysql模塊來查詢所有的分類及商品
6 把名字為‘羽絨服’修改成‘棉衣’
7 刪除名字為‘電飯煲’的記錄
8 查詢‘服裝’分類下面庫存最多的商品信息
9 查詢分類下有商品分類信息
10 查詢以‘服’結(jié)束的商品信息
11查詢創(chuàng)建日期在2008-11-10到2012-11-10的之間的商品

-------------------------------------------作業(yè)---------------------------------


CREATE database db_test102

use db_test102

1扯躺、  功能描述
1 創(chuàng)建一個分類表(cate)捉兴,包含字段id,name
CREATE TABLE cate(id int PRIMARY key auto_increment,name VARCHAR(20) not null)


2創(chuàng)建一個商品表(goods),包含字段id,name,number,create_time,price,cate_id 
CREATE TABLE goods(
id int PRIMARY key auto_increment,
name VARCHAR(20)not null,
number int not null,
create_time date,
price VARCHAR(50),
cate_id int)


3 在分類表中添加三條記錄 id:1 name:服裝,id:2 name:玩具录语,id:3 name:家電
INSERT into cate VALUES(1,"服裝"),(2,"玩具"),(3,"家電")

4 在商品表里添加六條記錄,
id:1 name:’羽絨服’ create_time:”2010-11-10” number:10 price:”1.00” cate_id:1
id:2 name:’輕便服’ create_time:”2012-11-10” number:30  price:”2.00” cate _id:1
id:3 name:’汽車’ create_time:”2014-11-10” number:40  price:”2.00” cate _id:2
id:4 name:’公主’ create_time:”2013-11-10” number:50  price:”6.00” cate _id:2
id:5 name:’橡皮泥’ create_time:”2015-11-10” number:23 price:”3.50” cate _id:2
id:6 name:’電飯煲’ create_time:”2008-11-10” number:3 price:”3.00” cate _id:3

insert  into goods VALUES
(1,"羽絨服",10,"2010-11-10","1.00",1),
(2,"輕便服",30,"2012-11-10","2.00",1),
(3,"汽車"  ,40,"2014-11-10","2.00",2),
(4,"公主"  ,50,"2013-11-10","6.00",2),
(5,"橡皮泥",23,"2015-11-10","3.50",2),
(6,"電飯煲",3 ,"2008-11-10","3.00",3)

SELECT * from goods
5 使用pymysql模塊來查詢所有的分類及商品


6 把名字為‘羽絨服’修改成‘棉衣’
UPDATE  goods set name="棉衣"  WHERE name="羽絨服"

SELECT * from goods
7 刪除名字為‘電飯煲’的記錄
DELETE FROM goods WHERE name="電飯煲"

8 查詢‘服裝’分類下面庫存最多的商品信息
SELECT *FROM goods WHERE number=(SELECT MAX(number)from goods WHERE cate_id=(SELECT id from cate WHERE name="服裝"))

9 查詢分類下有商品分類信息
SELECT *  from cate WHERE id in(SELECT cate_id from  goods)


10 查詢以‘服’結(jié)束的商品信息
SELECT * from goods WHERE name LIKE "%服"

11查詢創(chuàng)建日期在2008-11-10到2012-11-10的之間的商品
SELECT * from goods WHERE create_time BETWEEN "2008-11-10" and "2012-11-10"





1.創(chuàng)建一個數(shù)據(jù)庫 cart
CREATE database db_test103

use db_test103

2.使用新創(chuàng)建的數(shù)據(jù)庫,在數(shù)據(jù)庫下建立兩張表
用戶表(users): id  姓名 身高 
create table users(id int primary key auto_increment,
                                    name varchar(20),
                                    height float(5,2))

購物車表(user_cart):id 商品名稱  購買數(shù)量  總價  是否刪除  用戶id

create table user_cart(id int primary key auto_increment,
                                            name varchar(20),
                                            number int,
                                            price decimal(7,2),
                                            isdelete int,
                                            user_id int)

5.向用戶表添加以下記錄

1張三  1.80
2李四  1.75
3小明   1.34

insert into users values
(1,'張三',1.80),
(2,'李四',1.75),
(3,'小明',1.34)


6.在購物車表中加入以下記錄(1代表未刪除禾乘,0代表刪除)

1  商品一   10  100  1  1
2  商品二   3   89   0  1
3  商品三   2   30   1  1
4  商品四  10   50   1  2
5  商品五   3   10   1  2
6  商品六   1   76   1  2


insert into user_cart values
(1,'商品一',10,100,1,1),
(2,'商品二',3,89,0,1),
(3,'商品三',2,30,1,1),
(4,'商品四',10,50,1,2),
(5,'商品五',3,10,1,2),
(6,'商品六',1,76,1,2)


7.更新李四的購物車中 商品五的名字為商品5
update user_cart set name = '商品5' where name = '商品五' and user_id = (select id from users where name = '李四')
 

8.查詢身高大于1米   并且 購物車沒刪除  的  用戶和購物車信息
select * from users as user inner join user_cart as cart on user.id = cart.user_id where user.height > 1 and cart.isdelete = 1


9.查詢購物車中刪除和沒刪除的總價和為多少
select sum(price) from user_cart


10.查詢每個用戶沒刪除的購物車的數(shù)量大于1的記錄澎埠,并按降序排列,取三條記錄
select * from user_cart where isdelete = 1 and number > 1 order by number desc limit 0,3


11.按是否刪除分組始藕,查詢平均總價格大于10的用戶和購物車信息--------------------------------------------------------錯誤

select * from user_cart as cart group by isdelete having sum(cart.price) / count(*) > 10


12.查詢有購物車的用戶和購物車信息
select * from users as user inner join user_cart as cart on user.id = cart.user_id


13.刪除張三購物車中已刪除的購物車信息
delete from user_cart where isdelete = 0 and user_id = (select id from users where name = '張三')










最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蒲稳,一起剝皮案震驚了整個濱河市氮趋,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌江耀,老刑警劉巖剩胁,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異祥国,居然都是意外死亡昵观,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門舌稀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來啊犬,“玉大人,你說我怎么就攤上這事壁查【踔粒” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵睡腿,是天一觀的道長语御。 經(jīng)常有香客問我,道長席怪,這世上最難降的妖魔是什么沃暗? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮何恶,結(jié)果婚禮上孽锥,老公的妹妹穿的比我還像新娘。我一直安慰自己细层,他們只是感情好惜辑,可當(dāng)我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著疫赎,像睡著了一般盛撑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上捧搞,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天抵卫,我揣著相機與錄音,去河邊找鬼胎撇。 笑死介粘,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的晚树。 我是一名探鬼主播姻采,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼爵憎!你這毒婦竟也來了慨亲?” 一聲冷哼從身側(cè)響起婚瓜,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎刑棵,沒想到半個月后巴刻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡蛉签,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年胡陪,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片正蛙。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡督弓,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出乒验,到底是詐尸還是另有隱情愚隧,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布锻全,位于F島的核電站狂塘,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏鳄厌。R本人自食惡果不足惜荞胡,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望了嚎。 院中可真熱鬧泪漂,春花似錦、人聲如沸歪泳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽呐伞。三九已至敌卓,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間伶氢,已是汗流浹背趟径。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留癣防,地道東北人蜗巧。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像劣砍,于是被迫代替她去往敵國和親惧蛹。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,060評論 2 355