SQL之三

                SQL之三

注:有些sql语句在不同的DBMS中不能执行。
1. 日期和时间处理函数
日期和时间采用相应的数据类型存储在表中,每种DBMS都有自己的特殊形式。日期和时间以特殊的格式存储,以便能快速和有效地排序或过滤,并且节省物理存储空间。
举例1:
Orders表中包含的订单都带有订单日期。
为在SQL Server中检索2012年的所有订单。
Select order_num from Orders where datepart(yy,order_date) = 2012;
在Access中使用如下sql语句:
Select order_num from Orders where datepart(‘yyyy’,order_date) = 2012;
Oracle没有datepart()函数,不过有几个可用来完成相同检索的日期处理函数:
Select order_num from Orders where to_number(to_char(order_date,’yyyy’)) = 2016;
举一反三:
Select order_num from Orders where to_number(to_char(order_date,’mm’)) = 1;
这里查询的是所有1月份的
Select order_num from Orders where to_number(to_char(order_date,’dd’)) = 2;
这里查询的是所有2号的
举例2:
Orders表中2012年一月一号至2012年十二月三十一号的订单
Select order_num from where order_date between to_date(’01-01-2012’) and to_date(’12-31-2012’);
2. 数值处理函数
abs() 返回一个数的绝对值(绝对值:正数的绝对值就是它本身,负数的绝对值是-负数,0的绝对值就是0)
cos() 返回一个角度的余弦
exp() 返回一个数的指数值
p() 返回圆周率
sin() 返回一个角度的正弦
sqrt() 返回一个书的平方根
tan() 返回一个角度的正切
3. 汇总数据
聚集函数:
Avg() 返回某列的平均值
Count() 返回某列的函数
Max() 返回某列的最大值
Min() 返回某列的最小值
Sum() 返回某列值之和
下面是SQL语句的例子:
所有产品的平均价格
Select avg(prod_price) as avg_price from Products;
查询特定供应商所提供产品的平均价格:
Select avg(prod_price) as avg_price from Products where vend_id=’DLL01’;
注:avg()只用于单个列,avg()只能用来确定特定数值列的平均值,而且列名必须作为函数给出。为了获得多个列的平均值,必须使用多个avg()函数;avg()函数忽略列值为null的行。
返回Customers表中顾客的总数:
Select count(*) as num_cust from Customers;
注:如果count()函数指定的是某列,那么会忽略指定列为空的行,但如果用的是count(*),则不会忽略。
返回价格最多的订单
Select max(prod_price) as max_price from Products;
注:max()会忽略列值为null的值。
返回价格最少的订单
Select min(prod_price) as min_price from Products;
返回指定物品的数量之和
Select sum(quantity) as items_ordered from OrderItems where order_num = 20005;
返回总的订单的金额
Select sum(item_price * quantity) as total_price from OrderItems;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值