现有雇员表(雇员号,姓名,性别,出生日期),查询所有目前年龄小于30岁的雇员(按照出生年份判断,不需考虑生日),结果显示姓名和年龄。正确的命令组是:A. CREATE VIEW V_Age AS SELECT 姓名, YEAR(GETDATE ( ))-YEAR(出生日期) FROM 雇员表 GO SELECT 姓名,年龄 FROM V_Age WHERE 年龄<30 B. CREATE VIEW V_Age AS SELECT 姓名, YEAR (出生日期) FROM 雇员表 GO SELECT 姓名,年龄 FROM V_Age WHERE 年龄<30 C. CREATE VIEW V_Age (姓名,年龄) AS SELECT 姓名, YEAR (出生日期) FROM 雇员表 GO SELECT 姓名,年龄 FROM 雇员表 WHERE 年龄<30 D. CREATE VIEW V_Age (姓名,年龄) AS SELECT 姓名, YEAR (GETDATE( ))- YEAR (出生日期) FROM 雇员表 GO SELECT 姓名,年龄 FROM V_Age WHERE 年龄<30
时间: 2024-01-27 09:04:20 浏览: 66
现有雇员表(雇员号,姓名,性别,出生日期),查询所有目前年龄小于30岁的雇员(按照出生年份判断,不需考虑生日),结果显示姓名和年龄。正确的命令组是D. CREATE VIEW V_Age (姓名,年龄) AS SELECT 姓名, YEAR (GETDATE( ))- YEAR (出生日期) FROM 雇员表 GO SELECT 姓名,年龄 FROM V_Age WHERE 年龄<30。
在SQL语言中,可以使用CREATE VIEW语句创建视图,视图是一种虚拟的表,它是基于SELECT语句的结果集建立的。CREATE VIEW语句的语法格式为:CREATE VIEW 视图名 (列名1, 列名2, ...) AS SELECT语句。
根据题意,我们需要查询出所有目前年龄小于30岁的雇员,可以使用YEAR函数计算出雇员的年龄,然后根据年龄进行筛选。因此,正确的命令组应该是:
```
CREATE VIEW V_Age (姓名,年龄) AS
SELECT 姓名, YEAR(GETDATE()) - YEAR(出生日期) FROM 雇员表
GO
SELECT 姓名, 年龄 FROM V_Age WHERE 年龄 < 30
```
选项A中SELECT语句中没有给计算出的年龄取别名,因此无法在后面的SELECT语句中使用年龄这个列名。
选项B中,SELECT语句只计算了雇员的出生年份,没有计算出年龄,因此无法实现按照年龄筛选的功能。
选项C中,虽然使用了CREATE VIEW语句来创建视图,但是没有在视图中计算年龄,无法实现按照年龄筛选的功能。此外,应该在SELECT语句中使用YEAR(GETDATE())函数来计算当前年份,而不是直接写死年份。
阅读全文