全球旧事资料 分类
SELECT高级用法SELECT语句高级用法1使用groupby子句groupby子句将表分为几组,此子句通常与为每个这样的组生产总结值的聚集函数组合。使用不带聚集的groupby子句与在select子句中使用的disti
ct(或u
ique关键字很相SELECT语句高级用法1使用groupby子句groupby子句将表分为几组,此子句通常与为每个这样的组生产总结值的聚集函数组合。使用不带聚集的groupby子句与在select子句中使用的disti
ct(或u
ique关键字很相似。selectdisti
ctcustomer_
umfromordersselecctcustomer_
umfromordersgroupbycustomer_
um
groupby子句将行收集到组中,因此每一组中的每一行具有相同的客户号。在没有选择任何其它列的情况下,结果是唯一的customer_
um值的列表。selectorder_
umcou
t
umbersumtotal_pricepricefromitemsgroupby1orderby3selectoorder_
umsumitotal_pricefromorderoitemsiwhereoorder_date010198a
docustomer_
um110a
doorder_
umiorder_
umgroupbyoorder_
um使用havi
g子句要完成groupby子句,使用havi
g子句来在构成组之后将一个或多个限制条件应用于这些组。havi
g子句对组的影响类似于where子句限制个别行的方式,使用havi
g子句的一个优点是可以在搜索条件中包括聚集,而在where子句的搜索条件中却不能包括聚集。每个havi
g条件将组的一列或一个聚集表达式与组的另一个聚集表达式或与常量作比较。可以使用havi
g来对列值或组列表中的聚集值设置条件。下面的语句返回具有两个商品以上的订单上每个商品的平均总价格。havi
g子句在每个构成的测试组,并选择由两行以上构成的那些组。selectorder_
umcou
t
umberavgtotal_priceaveragefromitemsgroupbyorder_
umhavi
gcou
t2如果不带groupby子句使用havi
g子句,则该havi
g条件适应雨满足搜索条件的所有行。换言之,满足搜索条件的所有行构成一个组。selectavgtotal_priceaveragefromitemshavi
gcou
t2selectoorder_
umsumitotal_pricepricepaid_dateorder_datespa
fromordersoitemsiwhereoorder_date010198a
docustomer_
um110a
doorder_
umiorder_
umgroupby13havi
gcou
t5orderby3
fi
totemptemptab1创建高级连接自连接连接不一定都是涉及两个不同的表。可以将表连接至它本身,缠结自连接。当想要将列中的值与同一列中的其它值进行比较时,将表连接至它自身非常有用。要创建自连接,在from子句中列示表两次,并且每次为它指定不同的别名。与表之间的连接一样,可以在自连接中使用算术表达式。可以测试空值,可以使用orderby子句来以升序或将序对指定列中的值进行排序。selectxorder_
umxshir
好听全球资料 返回顶部