日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql经典面试题

發布時間:2024/2/28 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql经典面试题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數據庫腳本文件:?

/*

Navicat MySQL Data Transfer

?

Source Server ????????: mysql

Source Server Version : 50549

Source Host ??????????: localhost:3306

Source Database ??????: ooxxoo

?

Target Server Type ???: MYSQL

Target Server Version : 50549

File Encoding ????????: 65001

?

Date: 2019-08-14 21:27:27

*/

?

SET FOREIGN_KEY_CHECKS=0;

?

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

-- Table structure for course

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

DROP TABLE IF EXISTS `course`;

CREATE TABLE `course` (

??`cno` int(11) NOT NULL,

??`cname` varchar(50) DEFAULT NULL,

??`tno` int(11) DEFAULT NULL,

??PRIMARY KEY (`cno`),

??KEY `tno` (`tno`),

??CONSTRAINT `course_ibfk_1` FOREIGN KEY (`tno`) REFERENCES `teacher` (`tno`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

?

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

-- Records of course

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

INSERT INTO `course` VALUES ('1', '數學', '1');

INSERT INTO `course` VALUES ('2', '語文', '2');

INSERT INTO `course` VALUES ('3', '英語', '3');

?

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

-- Table structure for sc

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

DROP TABLE IF EXISTS `sc`;

CREATE TABLE `sc` (

??`sno` int(11) NOT NULL,

??`cno` int(11) NOT NULL,

??`score` int(11) DEFAULT NULL,

??PRIMARY KEY (`sno`,`cno`),

??KEY `cno` (`cno`),

??CONSTRAINT `sc_ibfk_1` FOREIGN KEY (`sno`) REFERENCES `student` (`sno`),

??CONSTRAINT `sc_ibfk_2` FOREIGN KEY (`cno`) REFERENCES `course` (`cno`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

?

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

-- Records of sc

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

INSERT INTO `sc` VALUES ('1', '1', '98');

INSERT INTO `sc` VALUES ('1', '2', '50');

INSERT INTO `sc` VALUES ('1', '3', '66');

INSERT INTO `sc` VALUES ('2', '1', '95');

INSERT INTO `sc` VALUES ('2', '2', '100');

INSERT INTO `sc` VALUES ('2', '3', '86');

INSERT INTO `sc` VALUES ('3', '1', '88');

INSERT INTO `sc` VALUES ('3', '2', '77');

INSERT INTO `sc` VALUES ('3', '3', '57');

INSERT INTO `sc` VALUES ('4', '1', '78');

INSERT INTO `sc` VALUES ('4', '2', '100');

INSERT INTO `sc` VALUES ('4', '3', '78');

INSERT INTO `sc` VALUES ('5', '2', '45');

?

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

-- Table structure for student

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

DROP TABLE IF EXISTS `student`;

CREATE TABLE `student` (

??`sno` int(11) NOT NULL,

??`sname` varchar(50) DEFAULT NULL,

??`sage` int(11) DEFAULT NULL,

??`ssex` varchar(2) DEFAULT NULL,

??PRIMARY KEY (`sno`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

?

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

-- Records of student

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

INSERT INTO `student` VALUES ('1', '李孟冬', '21', '男');

INSERT INTO `student` VALUES ('2', '劉蕾', '23', '女');

INSERT INTO `student` VALUES ('3', '李斌', '21', '男');

INSERT INTO `student` VALUES ('4', '天使', '18', '女');

INSERT INTO `student` VALUES ('5', '魔鬼', '99', '男');

?

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

-- Table structure for teacher

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

DROP TABLE IF EXISTS `teacher`;

CREATE TABLE `teacher` (

??`tno` int(11) NOT NULL,

??`tname` varchar(50) DEFAULT NULL,

??PRIMARY KEY (`tno`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

?

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

-- Records of teacher

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

INSERT INTO `teacher` VALUES ('1', '李鑫');

INSERT INTO `teacher` VALUES ('2', '董老師');

INSERT INTO `teacher` VALUES ('3', '李老師');

?

天黑請,請看題?

?

?

select * from student

select * from course

select * from sc

select * from teacher

?

select * from student,course,sc where student.sno=sc.sno and course.cno=sc.cno

?

查詢課程1的成績比課程2的成績高的所有學生的學號

select a.sno from

(select sno,score from sc where cno=1) a,

(select sno,score from sc where cno=2) b

where a.score>b.score and a.sno=b.sno

?

查詢平均成績大于60分的同學的學號和平均成績

select s.sno,avg(score) avgscore from student s,sc where s.sno=sc.sno group by s.sno having avgscore>60

?

查詢所有同學的學號、姓名、選課數、總成績

select s.sno,s.sname,count(cno) 選課數,sum(score) 總成績 from student s,sc where s.sno=sc.sno group by s.sno

?

查詢姓“李”的老師的個數

select count(tname) 個數 from teacher where tname like '李%'

?

查詢沒學過“李鑫”老師課的同學的學號、姓名

select sno,sname from student where sno in (select sno from sc,course c,teacher t where sc.cno = c.cno and c.tno = t.tno and t.tname='李鑫')

?

查詢同時學過課程1和課程2的同學的學號、姓名

select c.sno,c.sname from

(select sno from sc where sc.cno=1) a,

(select sno from sc where sc.cno=2) b,

student c

where a.sno = b.sno and a.sno = c.sno

?

select s.sno,s.sname from student s,(select t.sno from (select distinct sno from sc where sc.cno=1 union all select distinct sno from sc where sc.cno=2) t

group by t.sno having count(t.sno)=2) r where s.sno = r.sno

?

查詢學過“李鑫”老師所教所有課程的所有同學的學號、姓名

select stu.sno,stu.sname from student stu,

(select sno from sc,course c,teacher t where sc.cno=c.cno and c.tno=t.tno and t.tname='李鑫') t

where stu.sno = t.sno

?

?

查詢課程編號1的成績比課程編號2的成績高的所有同學的學號、姓名

select s.sno,s.sname from student s,

(select sno,score from sc where cno=1) sc1,

(select sno,score from sc where cno=2) sc2

where sc1.score>sc2.score and s.sno = sc1.sno and s.sno = sc2.sno

?

?

查詢所有課程成績小于60分的同學的學號、姓名

逆向思維!!!

?

select sno,sname from student

where sno not in (select distinct sno from sc where score > 60)

?

?

查詢至少有一門課程與學號為1的同學所學課程相同的同學的學號和姓名

select distinct a.sno, a.sname

from student a, sc b

where a.sno <> 1 and a.sno=b.sno and

b.cno in (select cno from sc where sno = 1)

?

?

把“sc”表中“李鑫”所教課的成績都更改為此課程的平均成績
update sc,(select sc.cno,score,avg(score) av from course c,teacher t,sc where c.tno=t.tno and t.tname='李鑫' and sc.cno=c.cno) d?
set sc.score=d.av where sc.cno=d.cno

?

?

查詢和編號為2的同學學習的課程完全相同的其他同學學號和姓名
select s.sno,sname from student s,sc where s.sno=sc.sno and s.sno<>2 ?group by s.sno having sum(sc.cno) =?
(select sum(cno) from sc where sc.sno=2)

?

?

刪除學習“李鑫”老師課的sc表記錄

delete from sc,course,teacher
where course.cno = sc.cno and course.tno = teacher.tno and tname = '李鑫'

?

?

總結

以上是生活随笔為你收集整理的mysql经典面试题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。