数据库查询练习152含参考答案Word文档格式.docx
《数据库查询练习152含参考答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库查询练习152含参考答案Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
blackberry'
,('
bs1'
102,'
orange'
,
bs2'
105,'
melon'
t1'
banana'
t2'
grape'
o2'
103,'
coconut'
c0'
cherry'
a2'
apricot'
l2'
104,'
lemon'
b2'
berry'
m1'
106,'
mango'
m2'
xbabay'
t4'
107,'
xbababa'
m3'
xxtt'
b5'
xxxx'
;
【1】从fruits表中检索所有字段的数据
Select*fromfruits;
【2】查询fruits表中f_name列所有水果名称
Selectf_namefromfruits;
【3】从fruits表中获取f_name和f_price两列
Selectf_name,f_pricefromfruits;
【4】查询价格为元的水果的名称
Selectf_namefromfruitswheref_price=;
【5】查找名称为“apple”的水果的价格
Selectf_pricefromfruitswheref_name=’apple’;
【6】查询价格小于10的水果的名称
Selectf_namefromfruitswheref_peice<
10;
【7】s_id为101和102的记录
Select*fromfruitswheres_id=101ors_id=102;
【8】查询所有s_id不等于101也不等于102的记录
Select*fromfruitswheres_id!
=101ands_id!
=102;
【9】查询价格在元到元之间的水果名称和价格
Selectf_name,f_pricefromfruitswheref_price>
andf_price<
;
【10】查询价格在元到元之外的水果名称和价格
Selectf_name,f_pricefromfruitswheref_price<
orf_price>
【11】查找所有以’b’字母开头的水果
Selectf_namefromfruitswheref_namelike‘b%’;
【12】在fruits表中,查询f_name中包含字母’g’的记录
Select*fromfruitswheref_namelike“%g%”;
【13】查询以’b’开头,并以’y’结尾的水果的名称
Select*fromfruitswheref_namelike“b%y”;
【14】在fruits表中,查询以字母’y’结尾,且’y’前面只有4个字母的记录
Select*fromfruitswheref_namelike“____y”;
第二部分:
#创建数据表customers
CREATETABLEcustomers(
c_idINTNOTNULLAUTO_INCREMENT,
c_nameCHAR(50)NOTNULL,
c_addressCHAR(50)NULL,
c_cityCHAR(50)NULL,
c_zipCHAR(10)NULL,
c_contactCHAR(50)NULL,
c_emailCHAR(255)NULL,
PRIMARYKEY(c_id)
);
#插入数据,请执行以下语句。
INSERTINTOcustomers(c_id,c_name,c_address,c_city,c_zip,c_contact,c_email)
VALUES(10001,'
RedHook'
'
200Street'
Tianjin'
300000'
LiMing'
'
),
(10002,'
Stars'
333FromageLane'
'
Dalian'
116000'
Zhangbo'
(10003,'
Netbhood'
1SunnyPlace'
Qingdao'
266000'
LuoCong'
NULL),
(10004,'
JOTO'
829RiversideDrive'
Haikou'
570000'
YangShan'
查询表中的记录数目:
SELECTCOUNT(*)AScust_numFROMcustomers;
【15】查询customers表中c_email为空的记录的c_id、c_name和c_email字段值
Selectc_id,c_name,c_emailfromcustomerswherec_emailisnull;
【16】查询customers表中c_email不为空的记录的c_id、c_name和c_email字段值
Selectc_id,c_name,c_emailfromcustomerswherec_emailisnotnull;
【17】在fruits表中查询s_id=101,并且f_price大于等于5的水果价格和名称
Selectf_name,f_pricefromfruitswheres_id=101andf_price>
=5;
【18】在fruits表中查询s_id=101或者102,且f_price大于5,并且f_name=‘apple’的水果价格和名称
Selectf_name,f_pricefromfruitswheres_idin(101,102)andf_price>
5andf_name=’apple’;
【19】查询s_id=101或者s_id=102的水果供应商的f_price和f_name
Selectf_price,f_namefromfruitswheres_id=101ors_id=102;
【20】查询s_id=101或者s_id=102的水果供应商的f_price和f_name(用不同的方法)
Selectf_price,f_namefromfruitswheres_idin(101,102);
【21】查询fruits表中s_id字段的值,返回s_id字段值且不得重复(使用distinct去重复)
SELECTDISTINCTs_idFROMfruits;
【22】查询fruits表的f_name字段值,并对其进行排序
Selectf_namefromfruitsorderbyf_name;
【23】查询fruits表中的f_name和f_price字段,先按f_name排序,再按f_price排序
Selectf_name,f_pricefromfruitsorderbyf_name,f_price;
【24】查询fruits表中的f_name和f_price字段,对结果按f_price降序方式排序
Selectf_name,f_pricefromfruitsorderbyf_pricedesc;
【25】查询fruits表,先按f_price降序排序,再按f_name字段升序排序
Select*fromfruitsorderbyf_pricedesc,f_name;
【26】根据s_id对fruits表中的数据进行分组,并显示每个分组的总记录数。
Selects_id,count(*)fromfruitsgroupbys_id;
【27】根据s_id对fruits表中的数据进行分组,将每个供应商的水果名称显示出来(使用GROUP_CONCAT拼接字段内容)
SELECTs_id,GROUP_CONCAT(f_name)ASNAMESFROMfruitsGROUPBYs_id;
【28】根据s_id对fruits表中的数据进行分组,并显示水果种类大于1的分组信息
Selects_idasnemesfromfruitsgroupbys_idhavingcount(f_name)>
1;
【29】根据s_id对fruits表中的数据进行分组,并显示记录数量
SELECTs_id,COUNT(*)ASTotalFROMfruits
GROUPBYs_idWITHROLLUP;
WITHROLLUP对所有记录进行统计
【30】根据s_id和f_name字段对fruits表中的数据进行分组
Select*fromfruitsgroupbys_id,f_name;
第三部分:
创建数据表,SQL语句如下:
CREATETABLEorderitems(
o_numINTNOTNULL,
o_itemINTNOTNULL,
quantityINTNOTNULL,
item_priceDECIMAL(8,2)NOTNULL,
PRIMARYKEY(o_num,o_item)
插入数据,SQL语句如下:
INSERTINTOorderitems(o_num,o_item,f_id,quantity,item_price)
VALUES(30001,1,'
10,,(30001,2,'
3,6),(30001,3,'
5,,
(30001,4,'
15,,(30002,1,'
b3'
2,,(30003,1,'
100,10),
(30004,1,'
50,,(30005,1,'
5,10),(30005,2,'
10,,
(30005,3,'
10,,(30005,4,'
5,;
【31】查询总订单价格大于100的订单号和总订单价格
【32】显示fruits表查询结果的前4行
【33】在fruits表中,使用LIMIT子句,返回从第5个记录开始的,行数长度为3的记录
【34】查询customers表中总的行数
【35】查询customers表中有电子邮箱的顾客的总数
【36】在orderitems表中,使用COUNT()函数统计不同订单号中订购的水果种类
【37】在orderitems表中查询30005号订单一共购买的水果总量
【38】在or