sql语句面试题

有三个表:学生表、课程表和学生选课表,它们的结构如下:学生表(

1、select 姓名 from 学生表 where 系别 = ‘计算机系’;2、select 学号 from 学生选课表 where 成绩 3、select 学号,成绩 from 学生选课表 where 课程号=1;4、select 学生表.姓名,学生选课表.课程号,学生选课表.成绩 from 学生表,学生选课表 where 学生表.学号 = 学生选课表.学号;5、select 姓名,年龄,性别 from 学生表 where 年龄 > (select 年龄 from 学生表 where name = ‘李明’);。

sql语句面试题

a)selectpnameas’商品名’,avg(qty)as平均销售量froms,p,*=’上海’*=*=*,*,*,sum(*)*=*=*=’上海市’*,*,*,*)、先删除Sale表的外键PNO,再删除gds表。

c)联系:视图(view)是在基本表之上建立的表,它的结构(即所定义的列)和内容(即所有数据行)都来自基本表,它依据基本表存在而存在。一个视图可以对应一个基本表,也可以对应多个基本表。

视图是基本表的抽象和在逻辑意义上建立的新关系区别:1、视图是已经编译好的sql语句。而表不是2、视图没有实际的物理记录。

而表有。3、表是内容,视图是窗口4、表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时四对它进行修改,但视图只能有创建的语句来修改5、表是内模式,视图是外模式6、视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。

从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。7、表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。

8、视图的建立和删除只影响视图本身,不影响对应的基本表。

面试题目(sql)

我使用的是MySQL 如下语句:

建表语句:

create table Lessoninfo(

no int,

week int,

isonduty char);

插入数据:略

insert into Lessoninfo values(。。。。。)

SQL查询语句:

select no as ‘教师号’, sum(week=1) as ‘星期一’,sum(week=2) as ‘星期二’,sum(week=3) as ‘星期三’ from Lessoninfo group by no;

/***********************附结果******************

mysql>select no as ‘教师号’, sum(week=1) as ‘星期一’,sum(week=2) as ‘星期二’,su

m(week=3) as ‘星期三’ from Lessoninfo group by no;

+++++

| 教师号 | 星期一 | 星期二 | 星期三 |

+++++

| 1 | 0 | 2 | 1 |

| 2 | 1 | 0 | 0 |

| 3 | 0 | 1 | 0 |

+++++

3 rows in set (0.02 sec)

sql 面试题目

select a.教师号,

*(*) 星期一,b.星期二,c.星期三 from tab a group by 教师号 where 星期号=1 and 是否有课=’有’

inner join

(select 教师号,count(*) 星期二 from tab a group by 教师号 where 星期号=2 and 是否有课=’有’) b

on b.教师号=a.教师号

inner join

(select 教师号,count(*) 星期三 from tab a group by 教师号 where 星期号=3 and 是否有课=’有’) b

on c.教师号=a.教师号

有关“数据库”的简单问题

呵呵 我没怎么学,现在只记得第一个 create table student /*建立一个表 student*/ ( 学号 char(8), /*表中包含元素属性 学号 类型为char 长度为8字符*/ 姓名 varchar(10), 性别 char(2), 所在系 varchar(20), 专业 varchar(20)) 刚刚看了下书 下面的也写下,呵呵“ INSERT INTO student /*插入数据到表student*/ (学号,姓名,性别,所在系,专业) /*要插入的记录属性*/ VALUES(‘200401′,’15’,’王五’,’男’,’20’,’IS’,’computer’ )/*插入的数值*/ UPDATE student /*要修改记录的表*/ SET 学号=’20040210′ /*要修改的记录*/ WHERE 姓名=’王五’ /*修改条件*/ SELECT * /*查询全部属性*/ FROM student /*查询的表*/ WHERE(所在系=’IS’) /*查询条件*/ ORDER BY 学号 ASC /*按学号排序(ASC为升序 DESC为降序*/ 好了,就这了 应该是对是 呵呵~“。