有“仓库”表和“保管工”表,检索工资大于1500元的保管工姓名和他们所在的仓库名,正确的语句是( )。A.SELECT姓名,仓库名FROM保管工; WHERE工资>1500B.SELECT姓名,仓库名FROM仓库; WHERE工资>1500C.SELECT姓名,仓库名FROM保管工,仓库; WHERE(工资>1500)OR(保管工.仓库号=仓库.仓库号)D.SELECT姓名,仓库名FROM保管工,仓库; WHERE(工资>1500)AND(职工.仓库号=仓库.仓库号)

题目

有“仓库”表和“保管工”表,检索工资大于1500元的保管工姓名和他们所在的仓库名,正确的语句是( )。

A.SELECT姓名,仓库名FROM保管工; WHERE工资>1500

B.SELECT姓名,仓库名FROM仓库; WHERE工资>1500

C.SELECT姓名,仓库名FROM保管工,仓库; WHERE(工资>1500)OR(保管工.仓库号=仓库.仓库号)

D.SELECT姓名,仓库名FROM保管工,仓库; WHERE(工资>1500)AND(职工.仓库号=仓库.仓库号)


相似考题
参考答案和解析
正确答案:D
解析:本题中SQL查询属于多表连接查询,注意条件中关联字段的选取以及逻辑条件的设置。选项A)和选项B)中都缺少查询的数据表,且查询条件有误;选项C)中查询条件错误,应使用AND进行条件连接,而不是OR。
更多“有“仓库”表和“保管工”表,检索工资大于1500元的保管工姓名和他们所在的仓库名,正确的语句是()。A.S ”相关问题
  • 第1题:

    设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程名,成绩),如果希望按分数降序查询出“英语系中选修了计算机课程的学生姓名和成绩”,则对应的SQL语句是()。

    A. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系一‘英语系’AND课

    程名=‘计算机’AND学生表.学号=课程表,学号

    B. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=‘计算机’AND学生表.学号=课程表.学号ORDER BY成绩ASC

    C. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=计算机’AND学生表。学号=课程表。学号ORDER BY成绩

    D. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

    程名=‘计算机’AND学生表.学号一课程表.学号ORDER BY成绩DESC


    参考答案D

  • 第2题:

    检索至少有一名职工信息的“仓库号”及仓库的“所在地”和“人数”,正确的SQL命令是( )。

    A.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE IN; (SELECT 仓库号 FROM 职工 WHERE 仓库号=职工.仓库号)

    B.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE 仓库号 IN; SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)

    C.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE NOT EXISTS; (SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)

    D.SELECT 仓库号,所在地,人数 FROM 仓库 WHERE EXISTS; (SELECT 仓库号 FROM 职工 WHERE 仓库号=仓库.仓库号)


    正确答案:D
    解析:本题中EXISTS属于SQL查询谓词,EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组,子查询要用圆括号括起来。本题SQL查询中的子查询查询的是“职12”表中“仓库号”等于“仓库”表中“仓库号”的数据,然后在外层查询中检索“仓库”表中的“仓库号”是否存在与子查询的查询结果中,将存在的“仓库号”显示其“仓库号”、“所在地”和“人数”的信息。

  • 第3题:

    求至少有两个职工的每个仓库的平均工资

    A.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; HAVING COUNT(*)>=2

    B.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; GROUP BY 仓库号 HAVING COUNT(*)>=2

    C.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; GROUP BY 仓库号 SET COUNT(*)>=2

    D.SELECT 仓库号,COUNT(*),AVG(工资)FROM 职工表; GROUP BY 仓库号 WHERE COUNT(*)>=2


    正确答案:B
    解析:本题利用SQL分组查询的功能,计算至少有两个职工的每个仓库的平均工资,利用HAVING子句可以对分组条件做进一步限定。

  • 第4题:

    检索最少有4名职工仓库的职工平均工资的语句为( )。

    A.SELECT 仓库号,COUNT(*) AS人数,AVG(工资) AS 平均工资 FROM 职工; GROUPBY 仓库号 WHERE COUNT(*)>=4

    B.SELECT 仓库号,COUNT(*) AS人数,AVG(工资) AS 平均工资 FROM 职工; GROUPBY 仓库号 HAVING COUNT(*)>=4

    C.SELECT 仓库号,COUNT(*) AS人数,AVG(工资) AS 平均工资 FROM 职工; GROUPBY 职工号 WHERE COUNT(*)>=4

    D.SELECT 仓库号,COUNT(*) AS人数,AVG(工资) AS 平均工资 FROM 职工; GROUPBY 职工号 HAVING COUNT(*)>=4


    正确答案:B
    解析:在分组与计算查询语句中,使用HAVING子句可以对分组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中,HAVING子句必须与GROUP BY短语同时使用。本题中先由GROUP BY子句按“仓库号”对记录行进行分组:再执行COUNT()函数统计每组中有多少个记录,执行AVG()函数计算每个组的平均工资;最后执行HAVING子句,只有记录总数大于等于4的组才输出结果,即仓库职工在4名(含)以上的。注意:此时输出的组记录是计算后的记录,即每组只包含一条记录,输出信息包括该仓库的仓库号、人数和平均工资。

  • 第5题:

    使用如下数据袁:仓库表(仓库号,所在城市) 职工表(职工号,仓库号,工资) 其中,仓库号、所在城市和职工号字段为字符型,工资字段为数值型。 有如下SQL SELECT语句: SELECT*FORM职工表WHERE工资<=2000 AND工资>=1500 下列与该语句等价的是( )。

    A. SELECT*FROM职工表WHERE工资BETWEEN l500 AND 2000

    B. SELECT*FROM职工表WHERE工资BETWEEN 2000 AND l500

    C. SELECT*FROM职工表WHERE工资FROM l500 INT0 2000

    D. SELECT*FROM职工表WHERE工资FROM 2000 INT0 1500


    正确答案:A
    BETWEEN…AND…是SQL查询语句中的一个特殊运算符,意思为“…和…之间”,相当于逻辑运算中的(A>=AND>=B,其中A>B),选项B中数值放置错误,选项C和选项D为语法错误。

  • 第6题:

    在工资表中有姓名和工资等字段,若要求查询结果按照工资降序排列,可使用的SQL语句是:SELECT姓名,工资FROM工资表。RDER BY工资【8】。


    正确答案:
    【答案】:DESC
    【知识点】:SQL语句中的排序子句
    【解析】:在SQL语句中 ORDER BY 子句用于根据指定的列对结果集进行排序,默认按照升序对记录进行排序,如果您希望按照降序对记录进行排序,可以使用 DESC 关键字。

  • 第7题:

    有如下SQL语句: SELECTSUM(工资)FROM职工表WHERE仓库号IN; (SELECT仓库号FROM仓库表WHERE所在城市=“北京”OR所在城市=“上海”) 执行语句后,工资总和是______。

    A.1500.00

    B.3000.00

    C.5000.00

    D.10500.00


    正确答案:C

  • 第8题:

    利用SQL语句,检索仓库中至少有一名职工的仓库信息,正确的命令是

    A.SELECT*FROM仓库表WHERE IN; (SELECT仓库号FROM职工表)

    B.SELECT*FROM仓库表WHERE NOT IN; (SELECT仓库号FROM职工表)

    C.SELECT*FROM仓库表WHERE仓库号EXISTS; (SELECT*FROM职工表WHERE仓库号=仓库表.仓库号)

    D.SELECT*FROM仓库表WHERE EXISTS; (SELECT*FROM职工表WHERE仓库号=仓库表.仓库号)


    正确答案:D
    解析:利用EXISTS或NOTEXISTS,可用来检查在子查询中是否有结果返回。利用运算符IN来表示,可写成如下格式:SELECT*FROM仓库表WHERE仓库IN;(SELECT仓库号FROM职工表)

  • 第9题:

    有“仓库”表和“保管工”表,检索工资大于1500元的保管工姓名和他们所在的仓库名( )。

    A.SELECT 姓名,仓库名 FROM 保管工; WHERE 工资>1500

    B.SELECT 姓名,仓库名 FROM 仓库; WHERE 工资>1500

    C.SELECT 姓名,仓库名 FROM 保管工,仓库; WHERE(工资>1500) OR (保管工.仓库号=仓库.仓库号)

    D.SELECT 姓名,仓库名 FROM 保管工,仓库; WHERE(工资>1500) AND (职工.仓库号=仓库.仓库号)


    正确答案:D
    解析:本题中SQL查询属于多表连接查询,注意条件中关联字段的选取以及逻辑条件的设置。选项A)和选项B)中都缺少查询的数据表,且查询条件有误;选项C)中查询条件错误,应使用AND进行条件连接,而不是OR。

  • 第10题:

    设有职工表(其中包含字段:职工号,仓库号,工资),查询仓库号是“CK1”的职工信息,并按工资降序排序,正确的SQL命令是( )。

    A)SELECT﹡FROM职工表WHERE仓库号=”CK1”ORDER BY工资DESC

    B)SELECT﹡FROM职工表WHILE仓库号=”CK1”ORDER BY工资ASC

    C)SELECT﹡FROM职工表WHERE仓库号=”CK1”ORDER BY工资ASC

    D)SELECT﹡FROM职工表WHERE仓库号=”CK1”GROUP BY工资DESC


    正确答案:A
    在用SQL语句进行查询时,对结果字段排序应使用ORDER BY短语,降序排序使用DESC子句

  • 第11题:

    检索至少有一名职工信息的“仓库号”及仓库的“所在地”和“人数”,正确的SQL命令是( )。

    A)SELECT仓库号,所在地,人数FROM仓库WHERE IN;

    (SELECT仓库号FROM职工WHERE仓库号=职工.仓库号)

    B)SELECT仓库号,所在地,人数FROM仓库WHERE仓库号IN;

    SELECT仓库号FROM职工WHERE仓库号=仓库.仓库号

    C)SELECT仓库号,所在地,人数FROM仓库WHERE NOT EXISTS;

    (SELECT仓库号FROM职工WHERE仓库号=仓库.仓库号)

    D)SELECT仓库号,所在地,人数FROM仓库WHERE EXISTS;

    (SELECT仓库号FROM职工WHERE仓库号=仓库.仓库号)


    正确答案:D
    本题中EXISTS属于SQL查询谓词, EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组,子查询要用圆括号括起来。选项D)的SQL查询中的子查询查询的是“职工”表中“仓库号”等于“仓库”表中“仓库号”的数据,然后在外层查询中检索“仓库”表中的“仓库号”是否存在于子查询的查询结果中,将存在的“仓库号”显示其“仓库号”、“所在地”和“人数”的信息。

  • 第12题:

    仓库保管工作是具有()性质的活动。


    正确答案:生产

  • 第13题:

    有“仓库”表和“职工”表,检索仓库中基本工资大于3000元的职工姓名和他们所在的仓库名

    A.SELECT姓名,仓库名FROM职工; WHERE基本工资>3000

    B.SELECT姓名,仓库名FROM仓库; WHERE基本工资>3000

    C.SELECT姓名,仓库名FROM职工,仓库; WHERE(基本工资>3000)OR(职工.仓库号=仓库.仓库号)

    D.SELECT姓名,仓库名FROM职工,仓库; WHERE(基本工资>3000)AND(职工.仓库号=仓库.仓库号)


    正确答案:D
    解析:本题中SQL查询属于多表联接查询,注意条件中关联字段的选取以及逻辑条件的设置。选项A)和选项B)中都缺少查询的数据表,且查询条件有误;选项C)中查询条件错误,应使用AND进行条件连接,而不是OR。

  • 第14题:

    利用SQL语句,检索仓库中至少有一名职工的仓库信息,正确的命令是______.

    A.SELECT。FROM仓库表WHEREIN; (SELECT仓库号FROM职工表)

    B.SELECT 2p FROM仓库表WHERENOTm; (SELECT仓库号FROM职工表)

    C.SELECT::FROM仓库表WHERE仓库号EXISTS; (SELECT*FROM职工表WHERE仓库号:仓库表.仓库号)

    D.SELECT*FROM仓库表WHEREEXISTS; (SEL。E(:T*FROM职工表WHERE仓库号:仓库表.仓库号)


    正确答案:D
    解析:利用EXISTS或NOTEXISTS,可用来检查在子查询中是否有结果返回。利用运算符IN来表示,可写成如下格式: SELECT*FROM仓库表WHERE仓库IN; (SELECT仓库号FROM职工表)

  • 第15题:

    有如下SQL语句:

    SELECT SUM(工资) FROM 职工表 WHERE 仓库号 IN;

    (SELECT 仓库号 FROM 仓库表 WHERE 所在城市="北京" OR 所在城市="上海")

    执行语句后,工资总和是

    A.3500.00

    B.3000.00

    C.5000.00

    D.10500.00


    正确答案:A
    解析:本题SQL查询语句的功能是统计在北京和上海仓库工作的职工的工资总和。

  • 第16题:

    使用如下数据表,回答下列各题: 仓库表(仓库号,所在城市) 职工表(职工号,仓库号,工资) 其中,仓库号、所在城市和职工号字段为字符型,工资字段为数值型。 {TS}检索在广州仓库工作的职工记录,要求显示职工号和工资字段,正确的命令是( )。

    A. SELECT职工号,工资FROM职工表; WHERE仓库表.所在城市=”广州”

    B. SELECT职工号,工资FROM职工表; WHERE仓库表.仓库号=职工表.仓库号; AND仓库表.所在城市=”广州”

    C. SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号=职工表.仓库号; AND仓库表.所在城市=”广州”

    D. SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号=职工表.仓库号; 0R仓库表.所在城市=”广州”


    正确答案:C
    本题中,可通过仓库号字段将仓库表和职工表进行连接,从而查询仓库所在地是“广州”的记录。

  • 第17题:

    使用如下数据表:仓库表(仓库号,所在城市) 职工表(职工号,仓库号,工资) 其中,仓库号、所在城市和职工号字段为字符型,工资字段为数值型。 将仓库号为A4的职工的工资改为2000.O0,正确的命令是( )。

    A. UPDATE职工表SET工资WITH 2000.00 WHERE仓库号=”A4”

    B. UPDATE职工表SET工资=2000.OO WHERE仓库号=”A4”

    C. UPDATE FROM职工表SET工资wITH 2000.OO WHERE仓库号=”A4”

    D. UPDATE FROM职工表SET工资=2000.OO WHERE仓库号=”A4”


    正确答案:B
    UPDATE命令的格式为:UPDATE数据表名SET列名1=表达式1[,列名2=表达式2…]WHERE筛选条件。

  • 第18题:

    第{TSE}题使用如下的“仓库”表和“职工”表:

    {TS}检索在“北京”仓库工作的职工的“职工号”和“工资”字段,正确的命令是( )。


    正确答案:C
    在SQL的简单连接查询中,可以通过FROM短语指定要查找的表,表之间要用逗号隔开,然后通过WHERE短语指定两个表的连接条件,连接字段一般为两表中的公共字段。选项A)用JOIN内联接,但格式错误。

  • 第19题:

    以下四题使用如下的仓库表和职工表。

    仓库表仓库号所在城市

    A1北京

    A2上海

    A3天津

    A4广州

    职工表职工号仓库号工资

    M1A12000.00

    M3A32500.00

    M4A41800.00

    M5A21500.00

    M6A41200.00

    检索在广州仓库工作的职工记录,要求显示职工号和工资字段,正确的命令是 ______。

    A.SELECT职工号,工资FROM职工表; WHERE仓库表.所在城市;“广州”

    B.SELECT职工号,工资FROM职工表; WHERE仓库表.仓库号;职工表.仓库号; AND仓库表.所在城市;“广州”

    C.SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号二职工表.仓库号; AND仓库表.所在城市;“广州”

    D.SELECT职工号,工资FROM仓库表,职工表; WHERE仓库表.仓库号:职工表.仓库号; OR仓库表.所在堀市=“广州”


    正确答案:C

  • 第20题:

    以下5题使用下列数据表。

    仓库(仓库号C(3)、所在地C(8)、人数N(2))

    职工(仓库号C(3)、职工号C(2)、姓名C(8)、工资I)

    检索有职工的工资大于或等于“WHl”仓库中所有职工“工资”的仓库号,正确的命令是( )。

    A.SELECT DISTINCT 仓库号 FROM 职工 WHERE 工资>=ANY; (SELECT MAX(工资) FROM 职工 WHERE 仓库号="WH1")

    B.SELECT DISTINC T仓库号 FROM 职工 WHERE 工资>=ANY; (SELECT 工资 FROM 职工 WHERE 仓库号="WH1")

    C.SELECT DISTINCT 仓库号 FROM 职工 WHERE 工资>=ALL; (SELECT 工资 FROM 职工 WHERE 仓库号="WH1")

    D.SELECT DISTINCT 仓库号 FROM 职工 WHERE 工资>=ALL; (SELECT MAX(工资) FROM 职工 WHERE 仓库号="WH1")


    正确答案:C
    解析:本题的SQL语句功能是检索有职工工资大于等于仓库号“WH1”中所有职工工资的仓库号。本题中通过于查询检索“WH1”仓库中所有职工的工资,然后在主查询中检索有职工工资大于子查询所查的工资记录,即大于所有“WH1”中所有职工工资的职工所在的仓库号,DISTINCT短语的功能是去掉查询结果中重复的记录。在SQL语句中可以利用ANY、ALL等量词进行查询。基本格式为:表达式>比较运算符>[ANY|ALL|SOME](子查询)。其中,ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有的行都符合条件,结果才成立。

  • 第21题:

    第 30~32 题使用如下的“仓库”表和“职工”表:

    第 30 题 检索在“北京”仓库工作的职工的“职工号”和“工资”字段,正确的命令是( )。


    正确答案:C
    在SQL的简单连接查询中,可以通过FROM短语指定要查找的表,表之间要用逗号隔开,然后通过WHERE短语指定两个表的连接条件,连接字段一般为两表中的公共字段。选项A)用JOIN内联接,但格式错误。

  • 第22题:

    第 16~19 题使用如下的“仓库”表和“职工”表,表结构如下:

    仓库(仓库号C(3)、所在地C(8)、人数N(2))

    职工(仓库号C(3)、职工号C(2)、姓名C(8)、工资I)

    第 16 题 检索有职工的工资大于或等于“WH1”仓库中所有职工“工资”的仓库号,正确的命令是( )。

    A)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY

    (SELECT MAX(工资)FROM职工WHERE仓库号=”WH1”)

    B)SELECT DISTINCT仓库号FROM职工WHERE工资>=ANY:

    (SELECT工资FROM职工WHERE仓库号=”WH1”)

    C)SELECT DISTINCT仓库号FROM职工WHERE工资>=ALL:

    (SELECT工资FROM职工WHERE仓库号=”WH1”)

    D)SELECT DISTINCT仓库号FROM职工WHERE工资>=ALL:

    (SELECT MAX(工资)FROM职工WHERE仓库号=”WH1”)


    正确答案:C
    选项C)中的SQL语句通过子查询检索“Will”仓库中所有职工的工资,然后在主查询中检索有职工工资大于子查询所查的工资的记录,即大于所有WH1中所有职工工资的职工所在的仓库号,DISTINCT短语的功能是去掉查询结果中重复的记录。在SQL语句中可以利用ANY、ALL等量词进行查询。其中, ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有的行都符合条件,结果才成立。

  • 第23题:

    假设有职工表(职工号,仓库号,工资),将下面的SQL语句补充完整,求至少有两个职工的每个仓库的平均工资。

    SELECT仓库号,COUNT(﹡),AVG(工资)FROM职工;

    GROUP BY仓库号__________COUNT(﹡)>=2


    正确答案:
    HAVTNG
    在SQL查询语句中,用HAVING子句限定分组条件。