7.3 执行算术计算

计算字段的另一常见用途是对检索出的数据进行算术计算。举个例子,Orders表包含收到的所有订单,OrderItems表包含每个订单中的各项物品。下面的SQL语句检索订单号20008中的所有物品:

输入▼

  1. SELECT prod_id, quantity, item_price
  2. FROM OrderItems
  3. WHERE order_num = 20008;

输出▼

  1. prod_id quantity item_price
  2. ---------- ----------- ---------------------
  3. RGAN01 5 4.9900
  4. BR03 5 11.9900
  5. BNBG01 10 3.4900
  6. BNBG02 10 3.4900
  7. BNBG03 10 3.4900

item_price列包含订单中每项物品的单价。如下汇总物品的价格(单价乘以订购数量):

输入▼

  1. SELECT prod_id,
  2. quantity,
  3. item_price,
  4. quantity*item_price AS expanded_price
  5. FROM OrderItems
  6. WHERE order_num = 20008;

输出▼

  1. prod_id quantity item_price expanded_price
  2. ---------- ----------- ------------ -----------------
  3. RGAN01 5 4.9900 24.9500
  4. BR03 5 11.9900 59.9500
  5. BNBG01 10 3.4900 34.9000
  6. BNBG02 10 3.4900 34.9000
  7. BNBG03 10 3.4900 34.9000

分析▼

输出中显示的expanded_price列是一个计算字段,此计算为quantity*item_price。客户端应用现在可以使用这个新计算列,就像使用其他列一样。

SQL支持表7-1中列出的基本算术操作符。此外,圆括号可用来区分优先顺序。关于优先顺序的介绍,请参阅第5课。

表7-1 SQL算术操作符

操 作 符 说  明
+
-
*
/

提示:如何测试计算
SELECT语句为测试、检验函数和计算提供了很好的方法。虽然SELECT通常用于从表中检索数据,但是省略了FROM子句后就是简单地访问和处理表达式,例如SELECT 3 * 2;将返回6,SELECT Trim(' abc ');将返回abcSELECT Now();使用Now()函数返回当前日期和时间。现在你明白了,可以根据需要使用SELECT语句进行检验。