49 lines
1.6 KiB
Transact-SQL
49 lines
1.6 KiB
Transact-SQL
-- (1)对于学生管理数据库给出的学生表结构,定义一个名为female的变量,并在SELECT 语句中使用它找出女学生的编号和姓名
|
|
DECLARE @female TABLE(
|
|
编号 VARCHAR(8),
|
|
姓名 VARCHAR(10)
|
|
);
|
|
|
|
INSERT INTO @female(编号,姓名)
|
|
SELECT 学号,姓名 FROM 学生表;
|
|
|
|
SELECT * FROM @female;
|
|
|
|
-- (2)定义一个变量,用于获取编号为20231212的学生的生源地,并将该生源地的学生编号和姓名显示出来
|
|
DECLARE @origin VARCHAR(6);
|
|
|
|
SET @origin =(
|
|
SELECT 生源地 FROM 学生表 WHERE 学号='12'
|
|
); -- 这里没有编号是20231212的学生
|
|
|
|
SELECT 学号 AS 编号,姓名 FROM 学生表
|
|
WHERE 生源地 = @origin;
|
|
|
|
-- (3)使用CASE语句对教师表按所在院系进行分类
|
|
SELECT *
|
|
,CASE 院系编号
|
|
WHEN 1 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=1)
|
|
WHEN 2 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=2)
|
|
WHEN 3 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=3)
|
|
WHEN 4 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=4)
|
|
WHEN 5 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=5)
|
|
WHEN 6 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=6)
|
|
WHEN 7 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=7)
|
|
WHEN 8 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=8)
|
|
WHEN 9 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=9)
|
|
WHEN 10 THEN (SELECT 院系表.名称 FROM 院系表 WHERE 院系=10)
|
|
ELSE '未知'
|
|
END AS 所在院系
|
|
|
|
FROM 教师表;
|
|
|
|
-- (4)使用循环控制语句计算10!
|
|
DECLARE @i INT = 1;
|
|
DECLARE @j INT = 1;
|
|
|
|
WHILE @i<10 BEGIN
|
|
SET @i = @i+1
|
|
SET @j = @j*@i;
|
|
END
|
|
|
|
SELECT @j; |