當前位置:首頁 » 編程語言 » sql語句考試

sql語句考試

發布時間: 2022-07-02 21:33:15

sql語句復習題 求助啊~~

怎麼也不給個表結構或庫結構看,如果不沒給,我就假設了
1. 為學生表增加一個欄位:出生日期 D
alter table 學生表
add
出生日期 datetime null;
2、將學生表中的「出生日期」欄位刪除
alter table 學生表
drop
column 出生日期 cascade
3、將學生表中所有團員的年齡置為18
update 學生表 set 年齡=18
(因為你沒給表結構,所以有些地方不一定像我這樣寫,別的方法也能實現,我這假設一個政治面貌的欄位)
where 政治面貌='團員'
4. 查詢所有女學生的姓名,性別,年齡
select 姓名,性別,年齡
from 表名
(我不知道你的這個性別這列是什麼類型,假高一個CHAR類)
where 性別='女'
5、查詢有考試成績的學生的學號,姓名和性別
select 學號,姓名,性別
from 表名
(假設考試成績欄位有的為NOT NULL,無為NULL)
where 考試成績 is not null
6、查詢選修了C1課程的學生的學號,姓名和專業
select 學號,姓名,專業
from 表名
where 課程=c1
7、查詢所有王華選修的課程的課程名和學分
select 課程,學分
from 表名
where 姓名='王華'
8、查詢和李明專業相同的學生的學號和姓名
法1:select 學號,姓名 from 表名 where 年齡 = (select 姓名 from 表名 where 姓名='李明');
(這種方法要用到內連)
法2:select 學號,姓名 from 表名 where 姓名 in (select 姓名 from 表名 where 姓名='李明');
當然我寫的全是命令方式,如果使用圖形方式更簡單.希望我寫的對你有所幫助

⑵ SQL 查詢語句期中考試題2

--1.分別查詢學生表和學生修課表中的全部數據。
SELECT * FROM student--查詢學生表
SELECT * FROM course--查詢課程表

--2.查詢成績在70到80分之間的學生的學號、課程號和成績。
SELECT Sno 學號,Cno 課程號,Grade 成績
FROM SC
WHERE Grade BETWEEN 70 AND 80

--3.查詢C01號課程成績最高的分數
SELECT TOP 1 Grade
FROM SC
WHERE Cno='C01'
ORDER BY Grade DESC--降序DESC,升序ASC

--4.查詢學生都選修了哪些課程,要求列出課程號。
SELECT Cname AS 學生選修的課程,Cno AS 課程號
FROM course
WHERE Cno IN(SELECT DISTINCT Cno FROM SC)--DISTINCT用來去除重復

--5.查詢Northwind資料庫中orders表的OrderID、CustomerID和OrderDate,
--並將最新的定購日期(OrderDate)列在前邊。
USE Northwind
GO
SELECT OrderID,CustomerID,OrderDate
FROM orders
ORDER BY OrderDate DESC--降序DESC,升序ASC

--6.查詢Northwind資料庫中orders表的ShipCountry列以B,C,D,F --//ShipCountry BCDF
--開始且第三個字元為"a"的OrderID、CustomerID和ShipCountry的信息。//OrderID、CustomerID第三個字元為"a"
USE Northwind
GO
SELECT OrderID,CustomerID,ShipCountry FROM orders
WHERE ShipCountry LIKE '[BCDF]_a%'--_下劃線表示任意一個字元,%表示一個或多個字元

--7.查詢Northwind資料庫中orders表的ShipCountry列不以A,B,C,D,E,F開始且最後一個字
--母是"a"的OrderID、CustomerID和ShipCountry的信息。
USE Northwind
GO
SELECT OrderID,CustomerID,ShipCountry
FROM orders
WHERE ShipCountry LIKE '[^ABCDEF]%a'

--8.查詢修了C02號課程的所有學生的平均成績、最高成績和最低成績。
SELECT AVG(Grade) 平均成績,MAX(Grade) 最高成績,MIN(Grade) 最低成績
FROM SC
WHERE Cno='C02'

--9.統計每個系的學生人數。
SELECT Sdept 系別,COUNT(*) 人數
FROM student
WHERE Sdept IN(SELECT DISTINCT Sdept FROM student)
GROUP BY Sdept

--10.統計每門課程的修課人數和考試最高分。
SELECT Cname 課程名,COUNT(*) 修課人數,MAX(Grade) 考試最高分
FROM SC,course
WHERE SC.Cno IN(SELECT DISTINCT Cno FROM SC ) AND course.Cno=SC.Cno
GROUP BY course.Cname

--11.統計每個學生的選課門數,並按選課門數的遞增順序顯示結果。
SELECT student.Sname 學生姓名,student.Sno 學生學號,COUNT(SC.Sno) 選課門數
FROM student
inner join SC ON SC.Sno=student.Sno
GROUP BY student.Sname,student.Sno
ORDER BY COUNT(SC.Sno) ASC

--12.統計選修課的學生總數和考試的平均成績。
SELECT COUNT(DISTINCT(Sno)) AS 學生總數,AVG(Grade) AS 平均成績
FROM SC --//用DISTINCT消除重復的行

--13.查詢選課門數超過2門的學生的平均成績和選課門數。
SELECT Student.Sname,AVG(Sc.Grade) 平均成績,COUNT(SC.Sno) 選課門數
FROM SC
--內聯接join或inner join,內聯系是比較運算符,只返回符合條件的行
JOIN Student ON (SC.Sno = Student.Sno)
JOIN Course ON (SC.Cno = Course.Cno)
GROUP BY Student.Sname
HAVING COUNT(distinct Course.Cno) >2--分組條件

--14.列出總成績超過200分的學生,要求列出學號、總成績。
SELECT Sno 學號,SUM(Grade) 總成績
FROM SC
GROUP BY Sno
HAVING SUM(Grade)>200

--15.查詢pubs資料庫的titles表中每類圖書的平均價格超過12.0元的書的類型(Type)、
--平均價格和最高價格。
USE pubs
GO
SELECT Type AS 書的類型,AVG(price) AS 平均價格,MAX(price) AS 最高價格
FROM titles
GROUP BY Type
HAVING AVG(price)>12.0

--16.查詢pubs資料庫的titles表中每類圖書中圖書的數目超過3本的圖書的總價格。
USE pubs
GO
SELECT 圖書類型=Type,圖書的數目=count(Type),圖書的總價格=SUM(price)
FROM titles
GROUP BY Type
HAVING count(Type)>3

--17.查詢選修了c02號課程的學生的姓名和所在系。
SELECT Sname 學生姓名,Sdept 所在系,SC.Cno AS 選修課程
FROM student
inner join SC ON student.Sno=SC.Sno
WHERE SC.Cno='C02'

--18.查詢成績80分以上的學生的姓名、課程號和成績,並按成績的降序排列結果。
SELECT Sname 學生姓名,SC.Cno 課程號,SC.Grade 成績
FROM student
inner join SC ON student.Sno=SC.Sno--內連接表SC查詢
WHERE SC.Grade>80
ORDER BY SC.Grade DESC

--19.查詢計算機系男生修了"資料庫基礎"的學生的姓名、性別、成績。
SELECT Sname 姓名,Ssex 性別,SC.Grade 成績
FROM student
inner join SC ON Cno IN(SELECT Cno FROM course WHERE Cname='資料庫基礎') --顯示成績的條件
AND student.Sno=SC.Sno --顯示成績的學生的學號
WHERE Sdept='計算機系' AND Ssex='男'

--20.查詢哪些學生的年齡相同,要求列出年齡相同的學生的姓名和年齡。
--這題使用到了表的自連接,所以需要給表取兩個別名,如A和B
SELECT A.Sname 年齡相同的學生的姓名,A.Sage 年齡
FROM student A
inner join student B ON A.Sage IN(SELECT Sage FROM student WHERE A.Sage=B.Sage AND A.Sname!=B.Sname)
GROUP BY A.Sname,A.Sage
ORDER BY A.Sage

--21.查詢哪些課程沒有人選,要求列出課程號和課程名。
SELECT Cno AS 課程號,Cname AS 課程名
FROM course
WHERE Cno NOT IN(SELECT DISTINCT SC.Cno FROM SC)

--22.查詢有考試成績的所有學生的姓名、修課名稱及考試成績
--要求將查詢結果放在一張新的永久表(假設新表名為new-sc)中。
SELECT student.Sname AS 有考試成績的學生的姓名,course.Cname AS 修課名稱,SC.Grade AS 考試成績
INTO [new_sc] --將查詢結果放入新表new_sc中
FROM student,course,SC
WHERE SC.Grade IS NOT NULL AND student.Sno=SC.Sno AND course.Cno=SC.Cno

--23.分別查詢信息系和計算機系的學生的姓名、性別、修課名稱、修課成績,
--並要求將這兩個查詢結果合並成一個結果集,
--並以系名、姓名、性別、修課名稱、修課成績的順序顯示各列。
--//此題用到了並union查詢
SELECT Sdept 系名,Sname 姓名,Ssex 性別,course.Cname 修課名稱,SC.Grade 修課成績
FROM student
inner join SC ON student.Sno=SC.Sno
inner join course ON course.Cno=SC.Cno
WHERE Sdept='信息系'
UNION
SELECT Sdept 系名,Sname 姓名,Ssex 性別,course.Cname 修課名稱,SC.Grade 修課成績
FROM student
inner join SC ON student.Sno=SC.Sno
inner join course ON course.Cno=SC.Cno
WHERE Sdept='計算機系'

select sdept, sname,ssex,cname,grade from student,sc,course
where student.sno=sc.sno and sc.cno=course.cno and (sdept='信息系' or sdept='計算機系')

--24.用子查詢實現如下查詢:
--(1) 查詢選修了C01號課程的學生的姓名和所在系。
SELECT Sname AS 選修了C01號課程的學生的姓名,Sdept AS 所在系
FROM student
WHERE Sno IN(SELECT Sno FROM SC WHERE Cno='C01')

--(2) 查詢數學系成績80分以上的學生的學號、姓名。
SELECT Sno AS 數學系成績80分以上的學生的學號,Sname AS 姓名
FROM student
WHERE Sno IN(SELECT Sno FROM SC WHERE Grade>80)
AND Sno IN(SELECT Sno FROM student WHERE Sdept='數學系')

--(3) 查詢計算機系學生所選的課程名.
SELECT Cname AS 計算機系學生所選的課程名
FROM course
WHERE
course.Cno IN(SELECT DISTINCT Cno FROM SC WHERE SC.Sno IN(SELECT Sno FROM student WHERE Sdept='計算機系'))

--25.將計算機系成績高於80分的學生的修課情況插入到另一張表中,分兩種情況實現://////////////?????/
--(1) 在插入數據過程中建表。
--使用SELECT INTO插入數據的方法,是在插入數據的過程中建立新表
SELECT student.Sname AS 學生名字,course.Cname AS 選修課程,SC.Cno AS 課程編號
INTO [SC_Info1]--將計算機系成績高於80分的學生的修課情況插入到表SC_Info1中
FROM student,course,SC
WHERE student.Sdept='計算機系' AND SC.Grade>80 AND course.Cno=SC.Cno AND student.Sno=SC.Sno

--(2) 先建一個新表,然後再插入數據。
--創建表SC_Info2
CREATE TABLE SC_Info2
(
Sname char(7),
Cname char(20),
Cno char(10)
)

--往表SC_info2插入查詢得到的結果
INSERT SC_Info2
SELECT student.Sname AS 學生名字,course.Cname AS 選修課程,SC.Cno AS 課程編號
FROM student,course,SC
WHERE student.Sdept='計算機系' AND SC.Grade>80 AND course.Cno=SC.Cno AND student.Sno=SC.Sno

--26.刪除修課成績小於50分的學生的修課記錄
DELETE SC WHERE Grade<50 OR Grade IS NULL

--27.將所有選修了"c01"課程的學生的成績加10分。
UPDATE SC
SET Grade=Grade+10
WHERE Cno='C01'

⑶ SQL Server資料庫進階考試題 要求用SQL語句實現(全部利用SQL語句完成)

create database empsystem
on (filename='d:\database\empsystem_data.mdf',
size=3mb,maxsize=20mb,filegrowth=2mb)
go
--use empsystem
create table Departments(
DepartId int not null primary key,
departname nvarchar(50),
location nvarchar(100))
create table Employees(
EmpId Int IDENTITY(1,1) primary key ,
EmpName Nvarchar(50),
Job Nvarchar(50),
MgrId int,
HireDate date,
Salary float,
Commission float ,
DepartId int REFERENCES Departments(DepartId))
go
insert Departments values(1,'市場部','湖北武漢')
insert Departments values(2,'銷售部','湖北武漢')
insert Departments values(3,'研發部','湖北武漢')
insert Departments values(4,'人事部','湖北武漢')
insert Departments values(5,'企劃部','湖北武漢')
insert Departments values(6,'產品部','湖北武漢')
go
insert Employees(Empname,Job,MgrId,HireDate,Salary,Commission,DeptId) values
('小劉','程序員',2,'2009-0708',2200,1500,3)
go
--1
select empname 姓名,job 工作,HireDate 入職日期,salary+commission 工資 from employees
where (salary+commission)>(select salary+commission from employees where empname='陳芳')
--2
select job 工作,salary+commission 工資 from employees
where (salary+commission)>3000
--3
create procere proce1
@name Nvarchar(50) ,@mgrId int output
as
select @mgrId=mgrId from employees where empname=@name
--4
--5
ALTER TABLE departments ADD DepartId int
CONSTRAINT DepartId_pk PRIMARY KEY

⑷ sql 語句問題,考試題目。大蝦幫忙啊

--)
用SQL語句建立P表。
USE
[SPJ]
GO
/******
Object:
Table
[dbo].[P]
******/
SET
ANSI_NULLS
ON
GO
SET
QUOTED_IDENTIFIER
ON
GO
IF
EXISTS(SELECT
*
FROM
SYSOBJECTS
WHERE
NAME
=
'P')
DROP
TABLE
P
GO
CREATE
TABLE
[dbo].[P](
[PNO]
[nvarchar](50)
NOT
NULL,
[PNAME]
[nvarchar](50)
NOT
NULL,
[COLOR]
[nvarchar](50)
NOT
NULL,
[WEIGHT]
[int]
NOT
NULL
)
GO
--2)用SQL語句找出所有零件的名稱、顏色、重量。
SELECT
PNAME,COLOR,WEIGHT
FROM
P
--3)用SQL語句把全部紅色零件的顏色改為黃色。
UPDATE
P
SET
COLOR
=
'YELLOW'
WEHRE
COLOR
=
'RED'
--4)
用SQL語句由S5供給J4的零件P6改為由S3供應。
UPDATE
SPJ
SET
SNO
=
'S3'
WEHRE
PNO
=
'P6'
AND
JNO
=
'J4'
AND
SNO
=
'S5'

⑸ 一些SQL的試題

1.應用程序
2.實體完整性
3.distince
4.
5.create Nonclustered index IDX_authors on authors(州名列,城市名列)
6.創建表
7.select 列名 from 表名
8.sum()
9.top
10.alter procere
11.ltrim()
12.declare @變數名 數據類型
13.where
14.from
15.order by
16.cast(表達式 as 數據類型)
17.count()
18.drop procere 存儲過程名
19.創建資料庫
20.價格大於15美元的所有數據
21.資料庫
22.rollback
23.
24.服務管理器
25.
26.數據冗餘(備份)
27.3
28.資料庫
29.應用程序
30.drop table
33.操作系統
許可權
1.
2.是並發控制的單位,是用戶定義的一個操作序列,具有原子性,一致性,隔離性,持續性四個特性。
3.共享鎖(S鎖):如果事務T對數據A加上共享鎖後,則其他事務只能對A再加共享鎖,不能加排他鎖.
獲准共享鎖的事務只能讀數據,不能修改數據。
4.
5.
1.存儲過程可以使得程序執行效率更高、安全性更好,因為過程建立之後 已經編譯並且儲存到資料庫,直接寫sql就需要先分析再執行因此過程效率更高,直接寫sql語句會帶來安全性問題,如:sql注入
2.建立過程不會很耗系統資源,因為過程只是在調用才執行。
6.聚簇索引是一種對磁碟上實際數據重新組織以按指定的一個或多個列的值排序。
7.
8.是並發控制的單位,是用戶定義的一個操作序列,具有原子性,一致性,隔離性,持續性四個特性。
BEGIN TRAN [Tran_name]開始事務
COMMIT TRAN [Tran_name]事務完成提交事務
9.存儲過程是由流控制和SQL語句書寫的過程,這個過程經編譯和優化後存儲在資料庫伺服器中,應用程序使用時只要調用即可。
10.增量備份:是針對於上一次備份(無論是哪種備份):備份上一次備份後,所有發生變化的文件。
12.原子性,要麼都做,要麼不做。
13.排它鎖若事務T對數據對象A加上X鎖,則只允許T讀取和修改A,其它任何事務都不能再對A加任何類型的鎖,直到T釋放A上的鎖。
它防止任何其它事務獲取資源上的鎖,直到在事務的末尾將資源上的原始鎖釋放為止。
14.分布式資料庫系統通常使用較小的計算機系統,每台計算機可單獨放在一個地方,每台計算機中都有DBMS的一份完整拷貝副本,並具有自己局部的資料庫,位於不同地點的許多計算機通過網路互相連接,共同組成一個完整的、全局的大型資料庫。
15.
17同2,18同8
19.DBMS資料庫管理系統,DBA資料庫管理員
20.1對1,一個學生對應一個學號
1對多 一個學生對應多門功課
多對多 商品與廠商
(備註:只能做這么多了,很長時間沒看書了,有時間可以看看<資料庫系統概論>薩師煊 王珊 高等教育出版社,很不錯的一本書哦。上有你要的答案,特別是簡答題。)
21.
22.資料庫完整性,對資料庫提出的某種約束條件或規則。
分三種:實體完整性,參照完整性,用戶自定義完整性
23.
24.原則如下:
●在經常進行連接,但是沒有指定為外鍵的列上建立索引,而不經常連接的欄位則由優化器自動生成索引。
●在頻繁進行排序或分組(即進行group by或order by操作)的列上建立索引。
●在條件表達式中經常用到的不同值較多的列上建立檢索,在不同值少的列上不要建立索引。比如在雇員表的「性別」列上只有「男」與「女」兩個不同值,因此就無必要建立索引。如果建立索引不但不會提高查詢效率,反而會嚴重降低更新速度。
●如果待排序的列有多個,可以在這些列上建立復合索引(compound index)。

26。聚集索引確定表中數據的物理順序。由於聚集索引規定數據在表中的物理存儲順序,因此一個表只能包含一個聚集索引。但該索引可以包含多個列(組合索引)
非聚集索引一種索引,該索引中索引的邏輯順序與磁碟上行的物理存儲順序不同。一個表可以有多個聚集索引

⑹ 上機考試SQL語句

insert into EMAGE.DBF
select * from (select t.employee_name,t.birthday from employee t order by t.birthday) where rownum <=5;

這里貌似不要求查出年齡吧。只是按生日排序就可以了。年齡是降序,按日期排序就該是升序。

⑺ 資料庫SQL語句考試

insert into A values('010102','張靜',『』,『』,『機電』)

update C set GRADE='59' where GRADE>=60

delete from A where SN like '李%'

select S#,SEX,AGE from A where SN='劉華'

select A.S#,CN from A,B,C where A.S#=C.S# and C.C#=B.C# and A.DEPT not in ('計算機系','法律系')

select C.S#,sum(GRADE) from C where C.S# in (select C.S# from B,C where B.CN='大學語文' and B.C#=C.C#) order by sum(GRADE) desc

update A set SEX='',AGE=''

drop table A
drop table B
drop table C

⑻ SQL 語句查詢所有參加考試的學生,從Stu表中和Sco表中

select * from score(成績表) where stuno(考號) in (select stuno from student)
思路是這樣的,學生表中有的考號在成績表中出現,就叫做參加考試了,更詳細的就是說,機試和筆試成績都不為null

⑼ windows與SQL語句考試 急急急!

1、 要另存文檔,除了可以通過按__下列四項中,不屬於資料庫特點的是( c )。
A.數據共享 B.數據完整性
C.數據冗餘很高 D.數據獨立性高

2.下列四項中,不屬於SQL2000實用程序的是( D )。
A.企業管理器 B.查詢分析器
C.服務管理器 D.媒體播放器

3、 SQL是(C )
A.一種編程語言,它可以用來開發
B.一種解釋性的語言,用於客戶端的語言
C.一種結構化的查詢語言,並非開發的語言
D.一種用於製作特效的開發語言

4、資料庫是指( a)
A.資料庫是長期的存儲的計算機內的、有組織的、可共享的數據集合
B.存儲在硬碟上的所有數據就是資料庫
C.有價值的數據集合在一起就成了一個資料庫
D.能夠集中管理的一系列的數據就是資料庫

5、Create、Alter、Drop等關鍵字是屬於(A )
A.DDL B.DML C.TCL D.DCL

6、Select、Insert、Update、Delete等關鍵字是屬於(b )
A.DDL B.DML C.TCL D.DCL

7、適用於政府、教育等機關等保密性較高的資料庫是( C)
A.MSSQL B.MySQL
C.Oracle D.FoxPro

8、以下不是常用的關系型資料庫的是(D )
A.MySQL B.Oracle
C.Access D.IMS

9、能控制事務的提交、回滾等操作的SQL語言是(d )
A.DDL B.DML
C.TCL D.DCL

10、以下是哪個公司首先提出了商用的SQL(C )
A.Microsoft B.IBM
C.ORACLE D.HP

11、以下哪一項目是關系運算符( B )
A.+,- B.and, or, not
C. %,(), D. #, @

12、資料庫的類型有(A )
A.系統資料庫和用戶資料庫
B.NORTHWIND,PUBS
C.MASTER,MSDB
D.MODEL,TEMPDB

13、當Microsoft SQL Server 2000安裝成功之後,自動創建了幾個資料庫(B )
A.3 B.4 C.5 D.6

14、以下不是資料庫的對象的有(D )
A.表 B.視圖
C.存儲過程 D.節點

15、以下函數中用來求字元長度的函數是(B )
A.Count() B.Len()
C.SubString() D.Max()

16、線纜標准化工作主要由哪一個協會制定(c )
A.OSI B.CCITT
C.EIA D.IEEE

17、802協議族是由下面的哪一個組織定義( C )
A.OSI B.EIA
C.IEEE D.ANSI

18、哪種拓撲結構會受到網路信號反射的影響( c )
A.網型 B.匯流排型
C.環型 D.星型

19、哪一種邏輯拓撲結構,或網路傳輸模型,更經常用地使用星型拓撲結構(a )
A.乙太網 B.令牌環網
C.令牌匯流排網 D.區域網

20、路由器連接哪些設備(a )
A.網橋和中繼器 B.網橋和集線器
C.兩個或更多的網路 D.集線器和節點

熱點內容
什麼是身份證密碼 發布:2025-02-04 05:43:41 瀏覽:784
雲伺服器江蘇 發布:2025-02-04 05:38:46 瀏覽:237
演算法及vb 發布:2025-02-04 05:33:37 瀏覽:101
安卓手機怎麼自檢電池 發布:2025-02-04 05:31:31 瀏覽:409
兩種存儲 發布:2025-02-04 05:26:43 瀏覽:203
手機php源碼 發布:2025-02-04 05:08:22 瀏覽:548
全戰帝國與拿戰哪個配置高 發布:2025-02-04 04:59:39 瀏覽:754
海控聯盟怎麼下載安卓版 發布:2025-02-04 04:55:52 瀏覽:767
妖盪三界安卓叫什麼 發布:2025-02-04 04:54:24 瀏覽:835
資料庫表的備份 發布:2025-02-04 04:53:50 瀏覽:564