当前位置:首页 » 编程语言 » sql试题tiv
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql试题tiv

发布时间: 2022-09-06 20:23:05

Ⅰ 救命...sql试题

1.惟一索引、非聚集索引和聚集索引
2.FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定16个表或视图,它们相互之间用逗号分隔,如果这些表或视图属于不同的数据库,可用“数据库.所有者名称.对象”格式限定表或视图对象。
3、 删除表的命令是:___________________drop table..______。
4.sum(),count()
5.T-SQL

Ⅱ sql期末考试试题及答案

查询题:1).select*fromEMPwhereDEPTNO='20';2).select*fromEMPwhereENAMElike'MA%';3).select*fromEMPorderbyJOB;4).selectb.DNAME,COUNT(a.*)asnumfromEMPaleftjoinDEPTbona.DEPTNO=b.DEPTNOgroupbyb.DNAME5).select*fromEMPwhereSAL>(selectmax(SAL)asSALfromEMPwhereDEPTNO='20');程序题:1).函数:CREATEFUNCTION[SumN](@nINT)RETURNSINTASBEGINdeclare@outINT,@iintset@out=0set@i=1while@i<=@nbeginset@out=@out+@iset@i=@i+1endreturn(@out)END2).存储过程:CREATEPROCEDURE[emp_info](@nDECIMAL(2))ASselect*fromEMPwhereDEPTNO=@n视图和索引1).CREATEVIEW[emp10_view]ASselect*fromEMPwhereDEPTNO='10'2).ALTERTABLE[EMP]ADDCONSTRAINT[IX_Empno]PRIMARYKEYCLUSTERED([empno]ASC)

Ⅲ sql面试题

1.
select
s.title,
count(p.id)
from
书表
s
left
join
评论
p
on
s.id=p.书表中的id
group
by
s.title
(注意:左外连接的作用是将评价数为0的书显示出来.count(p.id)和count(*)的区别是count(p.id)不计入p.id为null的行)
2.
select
top
1
s.title,
count(p.id)
from
书表
s
left
join
评论
p
on
s.id=p.书表中的id
group
by
s.title
order
by
2
desc
(以第2列倒序排序,取第1行)

Ⅳ 求SQL试题答案

1. C
2. A
3. A
4. B 说明:%是一个通配符,如select * from test where ID like 12% 这句话就表示在test表中搜索出ID以12开头的数据记录,可以是123,也可以是1234.
5. C
6. A 如果读者也作为主键你想会发生啥情况,每个人只能借1本书,灾难啊
7. A 我真的运行了一次,因为我也不确定...
8. B
9. C
10.D
11.D
12.B 这一题考的是LEFT OUTER JOIN的用法,LEFT OUTER JOIN等同于LEFT JOIN,数据数目按照较大数来算.
二.
1. ABCE D是程序员做的事
2. ABC 系统固定的角色权限是标准的PUBLIC权限,用户可以根据需要进行权限的调整,就是C选项
3. DE A错误的原因是因为事务备份的还原精度要比差异备份高,能恢复到故障点前一刻,这是差错备份做不到的;B,事务日志只能恢复从上一次备份到本次故障点之间的一个时刻.
4. AB

Ⅳ SQL查询面试题与答案

SQL查询面试题与答案

SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。下面是我搜集的SQL查询面试题与答案,欢迎大家阅读。

SQL查询面试题与答案一

1.一道SQL语句面试题,关于group by表内容:

2005-05-09 胜

2005-05-09 胜

2005-05-09 负

2005-05-09 负

2005-05-10 胜

2005-05-10 负

2005-05-10 负

如果要生成下列结果, 该如何写sql语句?

胜 负

2005-05-09 2 2

2005-05-10 1 2

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

create table #tmp(rq varchar(10),shengfu nchar(1))

insert into #tmp values('2005-05-09','胜')

insert into #tmp values('2005-05-09','胜')

insert into #tmp values('2005-05-09','负')

insert into #tmp values('2005-05-09','负')

insert into #tmp values('2005-05-10','胜')

insert into #tmp values('2005-05-10','负')

insert into #tmp values('2005-05-10','负')

1)select rq, sum(case when shengfu='胜' then 1 else 0 end)'胜',sum(case when shengfu='负' then 1 else 0 end)'负' from #tmp group by rq

2) select N.rq,N.胜,M.负 from (

select rq,胜=count(*) from #tmp where shengfu='胜'group by rq)N inner join

(select rq,负=count(*) from #tmp where shengfu='负'group by rq)M on N.rq=M.rq

3)select a.col001,a.a1 胜,b.b1 负 from

(select col001,count(col001) a1 from temp1 where col002='胜' group by col001) a,

(select col001,count(col001) b1 from temp1 where col002='负' group by col001) b

where a.col001=b.col001

2.请教一个面试中遇到的SQL语句的查询问题

表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。

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

select (case when a>b then a else b end ),

(case when b>c then b esle c end)

from table_name

3.面试题:一个日期判断的sql语句?

请取出tb_send表中日期(SendTime字段)为当天的所有记录?(SendTime字段为datetime型,包含日期与时间)

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

select * from tb where datediff(dd,SendTime,getdate())=0

4.有一张表,里面有3个字段:语文,数学,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):

大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。

显示格式:

语文 数学 英语

及格 优秀 不及格

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

select

(case when 语文>=80 then '优秀'

when 语文>=60 then '及格'

else '不及格') as 语文,

(case when 数学>=80 then '优秀'

when 数学>=60 then '及格'

else '不及格') as 数学,

(case when 英语>=80 then '优秀'

when 英语>=60 then '及格'

else '不及格') as 英语,

from table

5.在sqlserver2000中请用sql创建一张用户临时表和系统临时表,里面包含两个字段ID和IDValues,类型都是int型,并解释下两者的区别?

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

用户临时表:create table #xx(ID int, IDValues int)

系统临时表:create table ##xx(ID int, IDValues int)

区别:

用户临时表只对创建这个表的用户的Session可见,对其他进程是不可见的.

当创建它的进程消失时这个临时表就自动删除.

全局临时表对整个SQL Server实例都可见,但是所有访问它的Session都消失的时候,它也自动删除.

6.sqlserver2000是一种大型数据库,他的`存储容量只受存储介质的限制,请问它是通过什么方式实现这种无限容量机制的。

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

它的所有数据都存储在数据文件中(*.dbf),所以只要文件够大,SQL Server的存储容量是可以扩大的.

SQL Server 2000 数据库有三种类型的文件:

主要数据文件

主要数据文件是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。主要数据文件的推荐文件扩展名是 .mdf。

次要数据文件

次要数据文件包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。次要数据文件的推荐文件扩展名是 .ndf。

日志文件

日志文件包含恢复数据库所需的所有日志信息。每个数据库必须至少有一个日志文件,但可以不止一个。日志文件的推荐文件扩展名是 .ldf。

7.请用一个sql语句得出结果

从table1,table2中取出如table3所列格式数据,注意提供的数据及结果不准确,只是作为一个格式向大家请教。

如使用存储过程也可以。

table1

月份mon 部门dep 业绩yj

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

一月份 01 10

一月份 02 10

一月份 03 5

二月份 02 8

二月份 04 9

三月份 03 8

table2

部门dep 部门名称dname

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

01 国内业务一部

02 国内业务二部

03 国内业务三部

04 国际业务部

table3 (result)

部门dep 一月份 二月份 三月份

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

01 10 null null

02 10 8 null

03 null 5 8

04 null null 9

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

1)

select a.部门名称dname,b.业绩yj as '一月份',c.业绩yj as '二月份',d.业绩yj as '三月份'

from table1 a,table2 b,table2 c,table2 d

where a.部门dep = b.部门dep and b.月份mon = '一月份' and

a.部门dep = c.部门dep and c.月份mon = '二月份' and

a.部门dep = d.部门dep and d.月份mon = '三月份' and

2)

select a.dep,

sum(case when b.mon=1 then b.yj else 0 end) as '一月份',

sum(case when b.mon=2 then b.yj else 0 end) as '二月份',

sum(case when b.mon=3 then b.yj else 0 end) as '三月份',

sum(case when b.mon=4 then b.yj else 0 end) as '四月份',

sum(case when b.mon=5 then b.yj else 0 end) as '五月份',

sum(case when b.mon=6 then b.yj else 0 end) as '六月份',

sum(case when b.mon=7 then b.yj else 0 end) as '七月份',

sum(case when b.mon=8 then b.yj else 0 end) as '八月份',

sum(case when b.mon=9 then b.yj else 0 end) as '九月份',

sum(case when b.mon=10 then b.yj else 0 end) as '十月份',

sum(case when b.mon=11 then b.yj else 0 end) as '十一月份',

sum(case when b.mon=12 then b.yj else 0 end) as '十二月份',

from table2 a left join table1 b on a.dep=b.dep

8.华为一道面试题

一个表中的Id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数。

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

select id, Count(*) from tb group by id having count(*)>1

select * from(select count(ID) as count from table group by ID)T where T.count>1

SQL查询面试题与答案二

1、查询不同老师所教不同课程平均分从高到低显示

SELECT max(Z.T#) AS 教师ID,MAX(Z.Tname) AS 教师姓名,C.C# AS 课程ID,MAX(C.Cname) AS 课程名称,AVG(Score) AS 平均成绩

FROM SC AS T,Course AS C ,Teacher AS Z

where T.C#=C.C# and C.T#=Z.T#

GROUP BY C.C#

ORDER BY AVG(Score) DESC

2、查询如下课程成绩第 3 名到第 6 名的学生成绩单:企业管理(001),马克思(002),UML (003),数据库(004)

[学生ID],[学生姓名],企业管理,马克思,UML,数据库,平均成绩

SELECT DISTINCT top 3

SC.S# As 学生学号,

Student.Sname AS 学生姓名 ,

T1.score AS 企业管理,

T2.score AS 马克思,

T3.score AS UML,

T4.score AS 数据库,

ISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0) as 总分

FROM Student,SC LEFT JOIN SC AS T1

ON SC.S# = T1.S# AND T1.C# = '001'

LEFT JOIN SC AS T2

ON SC.S# = T2.S# AND T2.C# = '002'

LEFT JOIN SC AS T3

ON SC.S# = T3.S# AND T3.C# = '003'

LEFT JOIN SC AS T4

ON SC.S# = T4.S# AND T4.C# = '004'

WHERE student.S#=SC.S# and

ISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0)

NOT IN

(SELECT

DISTINCT

TOP 15 WITH TIES

ISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0)

FROM sc

LEFT JOIN sc AS T1

ON sc.S# = T1.S# AND T1.C# = 'k1'

LEFT JOIN sc AS T2

ON sc.S# = T2.S# AND T2.C# = 'k2'

LEFT JOIN sc AS T3

ON sc.S# = T3.S# AND T3.C# = 'k3'

LEFT JOIN sc AS T4

ON sc.S# = T4.S# AND T4.C# = 'k4'

ORDER BY ISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0) DESC);

3、统计打印各科成绩,各分数段人数:课程ID,课程名称,[100-85],[85-70],[70-60],[ <60]

SELECT SC.C# as 课程ID, Cname as 课程名称

,SUM(CASE WHEN score BETWEEN 85 AND 100 THEN 1 ELSE 0 END) AS [100 - 85]

,SUM(CASE WHEN score BETWEEN 70 AND 85 THEN 1 ELSE 0 END) AS [85 - 70]

,SUM(CASE WHEN score BETWEEN 60 AND 70 THEN 1 ELSE 0 END) AS [70 - 60]

,SUM(CASE WHEN score < 60 THEN 1 ELSE 0 END) AS [60 -]

FROM SC,Course

where SC.C#=Course.C#

GROUP BY SC.C#,Cname;

4、查询学生平均成绩及其名次

SELECT 1+(SELECT COUNT( distinct 平均成绩)

FROM (SELECT S#,AVG(score) AS 平均成绩

FROM SC

GROUP BY S#

) AS T1

WHERE 平均成绩 > T2.平均成绩) as 名次,

S# as 学生学号,平均成绩

FROM (SELECT S#,AVG(score) 平均成绩

FROM SC

GROUP BY S#

) AS T2

ORDER BY 平均成绩 desc;

5、查询各科成绩前三名的记录:(不考虑成绩并列情况)

SELECT t1.S# as 学生ID,t1.C# as 课程ID,Score as 分数

FROM SC t1

WHERE score IN (SELECT TOP 3 score

FROM SC

WHERE t1.C#= C#

ORDER BY score DESC

)

ORDER BY t1.C#;

6、查询每门课程被选修的学生数

select c#,count(S#) from sc group by C#;

7、查询出只选修了一门课程的全部学生的学号和姓名

select SC.S#,Student.Sname,count(C#) AS 选课数

from SC ,Student

where SC.S#=Student.S# group by SC.S# ,Student.Sname having count(C#)=1;

8、查询课程编号“002”的成绩比课程编号“001”课程低的所有同学的学号、姓名;

Select S#,Sname from (select Student.S#,Student.Sname,score ,(select score from SC SC_2 where SC_2.S#=Student.S# and SC_2.C#='002') score2

from Student,SC where Student.S#=SC.S# and C#='001') S_2 where score2

9、查询所有课程成绩小于60分的同学的学号、姓名;

select S#,Sname

from Student

where S# not in (select Student.S# from Student,SC where S.S#=SC.S# and score>60);

10、查询没有学全所有课的同学的学号、姓名;

select Student.S#,Student.Sname

from Student,SC

where Student.S#=SC.S# group by Student.S#,Student.Sname having count(C#) <(select count(C#) from Course);

11、查询至少有一门课与学号为“1001”的同学所学相同的同学的学号和姓名;

select S#,Sname from Student,SC where Student.S#=SC.S# and C# in select C# from SC where S#='1001';

12、查询至少学过学号为“001”同学所有一门课的其他同学学号和姓名;

select distinct SC.S#,Sname

from Student,SC

where Student.S#=SC.S# and C# in (select C# from SC where S#='001');

13、把“SC”表中“叶平”老师教的课的成绩都更改为此课程的平均成绩;

update SC set score=(select avg(SC_2.score)

from SC SC_2

where SC_2.C#=SC.C# ) from Course,Teacher where Course.C#=SC.C# and Course.T#=Teacher.T# and Teacher.Tname='叶平');

14、查询和“1002”号的同学学习的课程完全相同的其他同学学号和姓名;

select S# from SC where C# in (select C# from SC where S#='1002')

group by S# having count(*)=(select count(*) from SC where S#='1002');

15、删除学习“叶平”老师课的SC表记录;

Delect SC

from course ,Teacher

where Course.C#=SC.C# and Course.T#= Teacher.T# and Tname='叶平';

16、向SC表中插入一些记录,这些记录要求符合以下条件:没有上过编号“003”课程的同学学号、2、

号课的平均成绩;

Insert SC select S#,'002',(Select avg(score)

from SC where C#='002') from Student where S# not in (Select S# from SC where C#='002');

17、按平均成绩从高到低显示所有学生的“数据库”、“企业管理”、“英语”三门的课程成绩,按如下形式显示: 学生ID,,数据库,企业管理,英语,有效课程数,有效平均分

SELECT S# as 学生ID

,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='004') AS 数据库

,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='001') AS 企业管理

,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='006') AS 英语

,COUNT(*) AS 有效课程数, AVG(t.score) AS 平均成绩

FROM SC AS t

GROUP BY S#

ORDER BY avg(t.score)

18、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分

SELECT L.C# As 课程ID,L.score AS 最高分,R.score AS 最低分

FROM SC L ,SC AS R

WHERE L.C# = R.C# and

L.score = (SELECT MAX(IL.score)

FROM SC AS IL,Student AS IM

WHERE L.C# = IL.C# and IM.S#=IL.S#

GROUP BY IL.C#)

AND

R.Score = (SELECT MIN(IR.score)

FROM SC AS IR

WHERE R.C# = IR.C#

GROUP BY IR.C#

);

19、按各科平均成绩从低到高和及格率的百分数从高到低顺序

SELECT t.C# AS 课程号,max(course.Cname)AS 课程名,isnull(AVG(score),0) AS 平均成绩

,100 * SUM(CASE WHEN isnull(score,0)>=60 THEN 1 ELSE 0 END)/COUNT(*) AS 及格百分数

FROM SC T,Course

where t.C#=course.C#

GROUP BY t.C#

ORDER BY 100 * SUM(CASE WHEN isnull(score,0)>=60 THEN 1 ELSE 0 END)/COUNT(*) DESC

20、查询如下课程平均成绩和及格率的百分数(用"1行"显示): 企业管理(001),马克思(002),OO&UML (003),数据库(004)

SELECT SUM(CASE WHEN C# ='001' THEN score ELSE 0 END)/SUM(CASE C# WHEN '001' THEN 1 ELSE 0 END) AS 企业管理平均分

,100 * SUM(CASE WHEN C# = '001' AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = '001' THEN 1 ELSE 0 END) AS 企业管理及格百分数

,SUM(CASE WHEN C# = '002' THEN score ELSE 0 END)/SUM(CASE C# WHEN '002' THEN 1 ELSE 0 END) AS 马克思平均分

,100 * SUM(CASE WHEN C# = '002' AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = '002' THEN 1 ELSE 0 END) AS 马克思及格百分数

,SUM(CASE WHEN C# = '003' THEN score ELSE 0 END)/SUM(CASE C# WHEN '003' THEN 1 ELSE 0 END) AS UML平均分

,100 * SUM(CASE WHEN C# = '003' AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = '003' THEN 1 ELSE 0 END) AS UML及格百分数

,SUM(CASE WHEN C# = '004' THEN score ELSE 0 END)/SUM(CASE C# WHEN '004' THEN 1 ELSE 0 END) AS 数据库平均分

,100 * SUM(CASE WHEN C# = '004' AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = '004' THEN 1 ELSE 0 END) AS 数据库及格百分数

FROM SC

;

Ⅵ SQL语句,试题

题1:请查询姓名与手机重复的记录
SELECT *
FROM 观众资料登记表 a
WHERE [姓名]+[手机] IN
(SELECT [姓名]+[手机]
FROM 观众资料登记表 b
GROUP BY [姓名],[手机]
HAVING COUNT(*)>1
)

题2:请查询一个单位名称有不同编号记录
SELECT *
FROM 观众资料登记表 a
WHERE [单位名称] IN
(SELECT [单位名称]
FROM 观众资料登记表 b
GROUP BY [单位名称]
HAVING COUNT(*)>1
)

题3:请查询一个单位名称只出来一条记录
如果[编号][单位名称]是两个同时重复的话,如下:
SELECT DISTINCT [编号],[单位名称],
(SELECT TOP 1 [姓名] FROM [观众资料登记表] b WHERE a.[单位名称] = b.[单位名称]) AS [姓名],
(SELECT TOP 1 [手机] FROM [观众资料登记表] b WHERE a.[单位名称] = b.[单位名称]) AS [手机]
FROM [观众资料登记表] a

如果只有[单位名称]重复,而[编号]不一定也相同的情况下,如下:
SELECT DISTINCT [单位名称],
(SELECT TOP 1 [编号] FROM [观众资料登记表] b WHERE a.[单位名称] = b.[单位名称]) AS [编号],
(SELECT TOP 1 [姓名] FROM [观众资料登记表] b WHERE a.[单位名称] = b.[单位名称]) AS [姓名],
(SELECT TOP 1 [手机] FROM [观众资料登记表] b WHERE a.[单位名称] = b.[单位名称]) AS [手机]
FROM [观众资料登记表] a

Ⅶ 面试题目(sql)

1、忍不住想说一句,因为第一题中的字段类型是
【日期型】,而各种数据库操作日期型数据有不同的方法,没有一种共通的方法,所以脱离了数据库而言没有一种共通的sql。
2、select
ID,NAME,ADDRESS,PHONE,LOGDATE
from
T
where
ID
in(
select
ID
from
T
group
by
NAME
having
count(*)>1)
order
by
NAME;
3、delete
from
T
where
ID
not
in
(select
min(id)
from
T
group
by
name);
4、update
T
set
T.ADDRESS=(select
E.ADDRESS
from
E
where
E.NAME=T.NAME),
T.PHONE=(select
E.PHONE
from
E
where
E.NAME=T.NAME);
5、这个不同的数据库也有不同的处理方法,不能脱离数据库谈了。
如:SqlServer或者access可以使用
top
oracle可以使用
rownum

---
以上,希望对你有所帮助。

Ⅷ SQL试题求解

1
IF OBJECT_ID('学生表')IS NOT NULL
DROP TABLE 学生表
GO
create table 学生表 --建立学生表.
(
学号 int not null , --学号,姓名,年龄,性别,家庭住址,联系电话
姓名 varchar(10) not null, --姓名
性别 varchar(2)
年龄 int,
联系电话 varchar(10),
家庭住址 varchar(50),
联系电话 varchar(20),
check (性别 ='男' OR 性别='女'),
)

1.1
delete 学生表
insert 学生表 (学号,姓名,年龄,性别,联系电话,学历)
values(1,"A",22,"男","123456","小学")
insert 学生表 (学号,姓名,年龄,性别,联系电话,学历)
values(2,"B",21,"男","119","中学")
insert 学生表 (学号,姓名,年龄,性别,联系电话,学历)
values(3,"C",23,"男","110","高中")
insert 学生表 (学号,姓名,年龄,性别,联系电话,学历)
values(4,"D",18,"女","114","大学")

1.2
update 学生表
set 学历='大专'
where 联系电话 like '11%'
go

1.3
delet 学生表
where 性别='女',姓名 like 'B%'
go

1.4
select 姓名,学号
from 学生表
where 学历='大专',年龄<22
go

1.5
select 姓名,性别
from 学生表
order by 年龄 desc
go

2.1
use stu
IF OBJECT_ID('Student')IS NOT NULL
DROP TABLE Student
GO
create table Student --建立学生表.
(
学号 int not null ,
姓名 varchar(10) not null, --姓名
性别 varchar(2)
年龄 int,
所在系 varchar(10),
check (性别 ='男' OR 性别='女'),
)

2.2
use stu
select 学生表.学号
from Student As 学生表,SG As 成绩表
where 学生表.学号=成绩表.学号,成绩表.成绩<60
go

2.3
use stu
select 姓名,性别,年龄
from Student
where 所在系='计算机系',性别='男',姓名 like '张%'
go

2.4
use stu
insert Student (学号,姓名,年龄,性别,所在系)
values(05020,"高平",19,"女","积极管理系")
go

4.1
删除student表中学号为2004009的学生的信息

4.2
在stu数据库的student表中创建列名为姓名,家庭住址的视图student_view

4.3
查询stu数据库的student表中前9条信息

4.4
在stu数据库的student表中创建查询学号,姓名,家庭住址的存储过程student_pro

4.5
在stu数据库的student表中创建带输入参数的存储过程

4.6
查询Sg表中课程号为06的平均成绩

Ⅸ 计算机SQL语言试题

(一)现有关系数据库如下: 数据库名:我班同学数据库同学表(学号 char(6),姓名,性别,年龄,民族,身份证号,宿舍号) 宿舍表(宿舍号 char(6),宿舍电话) 用SQL语言实现下列功能的sql语句代码:1.创建数据库[我班同学数据库]代码。2.创建数据表[宿舍表]代码; 宿舍表(宿舍号 char(6),宿舍电话) 要求使用:主键(宿舍号)、宿舍电话:以633开头的7位电话号码3.创建数据表[同学表]代码; 同学表(学号 char(6),姓名,性别,年龄,民族,身份证号,宿舍号) 要求使用:主键(学号)、外键(宿舍号)、默认(民族)、非空(民族,姓名,年龄)、唯一(身份证号)、检查(性别)4.将下列宿舍信息添加到宿舍表的代码 宿舍号 宿舍电话 101 6331157 102 6331777 修改 宿舍号为101的 宿舍电话:6331158 删除 宿舍号为102的 宿舍信息5.创建视图[同学表视图]代码; 同学表视图(学号, 姓名, 性别, 年龄, 民族, 身份证号, 宿舍号, 宿舍电话)6.从同学表视图中查询姓张的女同学的姓名、性别、宿舍电话。7.从同学表中查询女同学的最大年龄、最小年龄、平均年龄。8.创建带参数的存储过程[某宿舍同学]:姓名, 性别, 宿舍电话 执行此过程,查询'101'宿舍情况 (二) 现有关系数据库如下: 数据库名:学生成绩数据库学生表(学号 char(6),姓名,性别,民族,身份证号) 课程表(课号 char(6),名称) 成绩表(ID,学号,课号,分数) 用SQL语言实现下列功能的sql语句代码:1.创建数据库[学生成绩数据库]代码 ;2.创建[课程表]代码 ; 课程表(课号 char(6),名称) 要求使用:主键(课号)、非空(名称)3. 创建[学生表]代码 ; 学生表(学号 char(6),姓名,性别,民族,身份证号) 要求使用:主键(学号)、默认(民族)、非空(民族,姓名)、唯一(身份证号)、检查(性别)4. 创建[成绩表]代码 ; 成绩表(ID,学号,课号,分数) 要求使用:主键(课号)、外键(成绩表.学号,成绩表.课号)、检查(分数),自动编号(ID)5. 将下列课程信息添加到课程表的代码 课号 课程名称 100001 大学语文 100002 大学英语 100003 西班牙语 修改 课号为100002的课程名称:实用英语 删除 课号为100003的课程信息 6. 写出创建:成绩表视图(学号,姓名,课号,课程名称,分数)的代码; 8. 写出创建:某门课程高低均分 计算某门课程成绩最高分、最低分、平均分 存储过程以及执行的代码; 执行:所有修 实用英语 这门学生的最高分、最低分、平均分;9. 检索姓李的女同学的情况:姓名、性别、民族。 10.检索有一门或一门以上课程成绩大于等于90分的所有学生的信息,包括学号、姓名。 (三)有一个[学生课程]数据库,数据库中包括三个表:学生表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,记为: Student(Sno,Sname,Ssex,Sage,Sdept) ,Sno 为关键字。课程表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记为:Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。 成绩表SG由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记为:SG(Sno Cno, Grade) (SNO, CNO)为关键字。用SQL语言实现下列功能:1.建立学生表Student,其中学号属性不能为空,并且其值是唯一的。2.向Student表增加“入学时间(Scome)”列,其数据类型为日期型。3.查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列。4.查询学习1号课程的学生最高分数、平均成绩。5.查询与“李洋”在同一个系学习的学生。6.将计算机系全体学生的成绩置零。
有些秘密是男人永远不会说的,所以就不要再问了,因为再问,他们给的答案也不会是真的!

1、男人很容易喜欢一个女人,却不轻易深爱一个女人。

2、男人在感情的王国里,绝对是个昏君。女人只要肯奉承,他什么都答应。

3、男人普遍喜欢外表温柔的女子,宁愿把精力花在事业或其他地方,也不愿全用来征服女人。

4、男人都不太重视对自己太好的女人。

5、男人都怕女人死缠烂打,但喜欢用同样的方式对付没追上的女人。

6、男人的梦想之一,是拥有可以超越友谊界限的红颜知己。

7、男人会以很理性的态度取舍爱情,就算他感性上很爱一个人,但当他清楚她并非一个好妻子时,他会放弃她,另找合适家居生活的那一个。男人认为恋爱和结婚是两回事,很多时候,他拖延结婚,根本原因就是他认为身边的女人不是想象中的好妻子。

8、男人对妻子的要求,可能比对恋人更低——在外型上,在性格上则更高。

9、懂得欣赏聪明女人的男人不多,和她们在一起,男人总觉得缺乏安全感受。

10、当有喜欢的女人在场时,男人会有如下表现:话多;显得聪明些;比平日慷慨;会把话题扯到得意成就上;会刻意显露平时少见的好心肠;多说一些自以为好笑的笑话引大家发笑。

11、一个男人同时是大男人和小男人的化身。大男人的他,希望女人完全迁就他,令他放心;小男人的他,意识到自己懦弱无能的一面,犹豫不决。说穿了,他们很多都是忌妒心重的小器鬼,又像孩子般容易被哄骗。

12、男人追求女人的时候愿意割舍一切自由,追到了越来越感到自由的重要性。

13、男人内心隐藏着狩猎心态,追捕,得到后就要驯服她,让她变成可在家饲养的乖乖动物。

14、男人都有爱当英雄的自大心态,所以很容易爱上向他诉苦的女人。

15、男人希望身边的女人明白:带着同一个女人去所有地方,实在是一件很闷的事(或许女人也这样觉得吧,只是不好意思说),所以和其他女人适度约会,是调剂和放松,完全可以没有其他企图。

16、两性关系中,女人需要男人告诉她,他愿意为她做任何牺牲,男人则需要女人告诉他,他很能干。

17、男人自以为是的多情,常常是女人眼中不折不扣的薄幸。

18、在男人心底,亲热到哪个程度,就是和女人的恋情发展到什么程度。

19、男人每隔一段时间,就有情绪和体力跌到谷底的几天,不想见任何人,躲起来翻翻书,听听音乐,看看影碟或狂打电玩发泄。

20、有过恋爱经验的男人都知道:女人是不能不骗的,类似像:“我会永远爱你”,“我一直都会像现在这样疼你”,“什么时候需要我,一个电话我就立刻赶来”,“我以后再也不会像爱你这样去爱另外一个人”这种话是必须要说但永远坚持不了的“骗话”,谁让女人这么爱听呢!

21、男人遇上旧情人多半会自作多情,以为与自己有过感情的人,内心总会保存一份情,幻想爱过他的女人永远爱他。女人只会美化眼前的男人,男人却不自觉地美化逝去的恋情。所以男人比女人更认同:分手还是朋友。不管是甩人还是被甩,男人多半愿意与前女友继续保持联络。

22、女人在意男友以前的女友,男人却在意女人离开他后找个什么样的男友。如果分手后仍是朋友的,他会时不时批评她的男友。

23、男人跌入爱河,很少问她的过去,不太关心她和哪种男人谈过恋爱,因为男人较注重女人的外表——外表就是现在。

24、男人不愿听心上人的旧恋情,因为一想到自己爱的人之前和其他男人有过肌肤之亲,就难以忍受。

25、面对两个对自己有爱意的人,女人会在徘徊中选择,男人不会为此烦恼——他其实只想同时追上两个人呢!

26、男人爱上一个女人,不一定对她有强烈的亲热冲动,反倒对一些他只是喜欢而不爱的女人,冲动更大些。

27、男人很容易被女人吸引,但他分得出哪种渴求出于性还是爱,大概知道能从她身上得到什么。

28、女人主动示爱,对男人来说,唯一的损失就是缩短了那段朦朦胧胧,若有若无的浪漫日子。

29、男人相信证明自身出色的重要表现之一是:拥有更多的女人。事业上越出色的男人,往往需要更多女人的仰慕和倾心以体现他的超凡脱俗。

30、男人在分手问题上拖泥带水,其实是想把去留的难题丢给女人,减少自己决定带来的内疚感。

31、男人说的“未来”是6个月到1年时间,女人的定义则可以是10年到50年。当男人爱上一个女人,他只会想象如何在短暂的未来与她亲密发展;女人则幻想到恋爱,结婚,生孩子乃至如何白头到老。

32、男人基本是都小器,大方是装出来的。表面上他们不拘小节,其实内心和女人一样,计算得清清楚楚。

33、女性较容易坦白心事,男人恰恰相反。遇到烦恼,他们找个别好友倾诉时,不会说得很完整,总会给自己留最后一点面子。男人的倾诉都是经过包装或刻意切碎的,不让一个人知道全部。这也是女人很难了解男人的原因——他们根本不想被人彻底了解。

34、一个男人可以爱上两个女人,但究竟喜欢哪个多一点,他多半分不清楚。

35、男人看待婚外情比女人实际,因为他有更多机会涉及婚外情,而且他心里明白——花心隐藏在男人的天性中。

36、男人要变心,其实和女人是否注意保持美丽仪表没直接关系,那只是他的借口之一。当他厌倦一个女人,不管她多漂亮,只要是她以外的任何女人,他都觉得比她有吸引力。

37、成熟男人对于崇拜他的少女,抵抗力是相当弱的。

38、男人年纪越大,择偶越随心所欲,乃至不顾他人的任何想法。

39、对许多男人来说,真爱意味着——爱情减去性。换句话,男人只要觉得女人缺乏性的吸引力,就可以一直跟她做单纯的朋友。

40、男人在有寻求亲热的身体冲动那一刻,对异性的要求忽然降低,他会觉得一个平时普通的女人很可爱,甚至很性感。不过等冲动一旦消退,他立刻恢复了习惯的审美判断。

41、男人对女人的爱天天快递查询 http://www.paijian.com/tt.html总是混合了生理冲动,亲热前他觉得女人什么都好,之后却可以无半点留恋,但为了不背负太多罪恶感,他们可以装作温柔地在事后继续吐露缠绵的情话。

42、男人很容易爱上卖弄风情,看起来唾手可得的女人,因为他觉得有更多机会触摸。

Ⅹ 一些SQL的试题

4.1
select stud_id,name ,birthday,gender,mark from stud_info where name like '张%' and len(name)=2
4.2
select stud_id ,name from stud_grade where grade=(select max(grade) from stud_grade
或者select top 1 stud_id ,name from stud_grade order by grade desc

4.3
declare @zhuanye char(10)
select @zhuanye=sunbstring(zhuanye,5,2) from stud_info
select name from stud_info where @zhuanye='01'

4.4
create proc people_num
as
begin
select count(*) from stud_info where gender='男'
end

4.5
alert table stud_info add column money varchar(30)

4.6
alter table stud_info add constraint uniqueindex unique(telcode)
4.7
ALTER TABLE stud_info
ADD
CONSTRAINT pk_level
PRIMARY KEY CLUSTERED (stud_id)
4.8
alter table stud_grade
add constraint stud_info
foreign key (stud_id)
references (stud_id)
4.9
create nonclustered index CourseIndex
on stud_grade(course_id)
4.10
create view stud_view
as
select A.stud_id ,A.name,B.grade from stud_info A,stud_grade B where A.stud_id=B.stud_id and
substring(stud_id,3,2)='01'

第二题
36 select 姓名,年龄 from S order by 年龄 desc
37 select * from S where 姓名 like '王%'
38 select S.姓名,S.年龄,S.性别,S.系别 from S,C,SC where S.学号=SC.学号 and C.课号=SC.课号 and C.课名='数据库原理'
39 select * from S where 系别=(select 系别 from S where 姓名='刘平')