请高手帮忙找出正确答案,简单说一下方法
万分感谢~!!
1) 从“产品”表里查询出价格高于产品名称为“一次性纸杯”的产品的记录,此SQL语句为()。(选择一项)
a) SELECT * FROM 产品WHERE 价格>‘一次性纸杯’;
b) SELECT * FROM 产品WHERE 价格>(SELECT * FROM 产品WHERE 产品名称>’ 一次性纸杯’);
c) SELECT * FROM 产品WHERE EXISTS 产品名称=’ 一次性纸杯’);
d) SELECT * FROM 产品WHERE 价格>(SELECT 价格FROM 产品WHERE 产品名称=’ 一次性纸杯’);
2) 现有顾客表customers, 包含数据如下表,若执行sql语句:select count(distinct(city)) from customers,以下()是输出结果。(选择一项)
cid cname city
1 jack null
2 lee beijing
3 tom
4 chen beijing
a) 1
b) 2
c) 3
d) 4
3) 现有顾客表customers, 包含数据如下表,若执行sql语句:select avg(discount) from customers,以下()是输出结果。(选择一项)
cid cname discount
1 jack null
2 lee 8
3 tom 7
4 chen 1
a) 错误提示:不能对null进行avg操作
b) 16
c) 8
d) 4
4) 现有订单表orders, 包含数据如下表。若查询既订购了产品P01,又订购了产品P02的顾客编号,可以执行以下()sql语句。(选择两项)
cid (顾客编号) Pid (产品编号)
C01 P01
C01 P02
C02 P01
C03 P02
a) select distinct(cid) from orders o1 where o1.pid in ('p01','p02')
b) select distinct(cid) from orders o1,orders o2 where o1.pid='p01' and o2.pid='p02' and o1.cid=o2.cid
c) select distinct(cid) from orders o1 where pid='p01' and cid in (select cid from orders where pid ='p02')
d) select distinct(cid) from orders o1,orders o2 where o1.pid='p01' and o2.pid='p02'
5) 假设订单表orders用来存储订单信息,cid代表客户编号,money代表单次订购额,现要查询每个客户的订购次数和每个客户的订购总金额,下面()sql语句可以返回正确结果。(选择一项)
a) select cid,count(distinct(cid)),sum(money) from orders group by cid
b) select cid,count(distinct(cid)),sum(money) from orders order by cid
c) select cid,count(cid),sum(money) from orders order by cid
d) select cid,count(cid),sum(money) from orders group by cid
6) Sql server提供了一些系统函数,以下说法错误的是()。(选择两项)
a) select datalength(‘ab cde’) 返回值为:5
b) select convert(char(3),12345) 返回值为:123
c) select datalength(‘abcde’) 返回值为:5
d) select convert(char(5),12345) 返回值为:12345