SQL 创建计算字段
一、计算字段:
计算字段是运行时在SELECT语句内创建的。
- 字段(field):
- 基本上与列的意思相同,经尝互换使用,不过数据库一般称为
列
,而术语字段通常与计算字段一起使用
。
- 基本上与列的意思相同,经尝互换使用,不过数据库一般称为
- 注意:只有
数据库知道SELECT语句中哪些列是实际的表列,哪些列是计算字段
。从客户端来看,计算字段的数据与其他列的数据返回方式相同。 - 提示:客户端与服务器的格式
- 在SQL语句内可完成的许多转换和格式化工作都可以直接在客户端应用程序内完成。
但一般来说,在数据库服务器上完成这些操作比在客户端中完成要快的多
。
- 在SQL语句内可完成的许多转换和格式化工作都可以直接在客户端应用程序内完成。
二、拼接字段:
- 拼接:
将值联结到一起(将一个值附加到另一个值)构成单个值
。
- 在SQL中的SELECT语句中,可使用一个特殊的操作符来拼接两个列。根据你所使用的DBMS,此
操作符可用加号(+)或两个竖杠(||)表示。在MySQL和MariaDB中,必须使用特殊的函数
。
三、执行算术计算:
-
计算字段的另一个常见用途是检索的数据进行算术计算
。SELECT prod_id, quantity, item_price, quantity * item_price AS expanded_price FROM orderitems WHERE order_num =20008;
-
输出结果如下:
+---------+----------+------------+----------------+ | prod_id | quantity | item_price | expanded_price | +---------+----------+------------+----------------+ | RGAN01 | 5 | 4.99 | 24.95 | | BR03 | 5 | 11.99 | 59.95 | | BNBG01 | 10 | 3.49 | 34.90 | | BNBG02 | 10 | 3.49 | 34.90 | | BNBG03 | 10 | 3.49 | 34.90 | +---------+----------+------------+----------------+
-
输出中显示的
expanded_price列是一个计算字段
,此计算为quantity * item_price
。客户端应用现在可以使用这个新计算列,就像使用其他列一样。 -
下面列出
基本算术操作符
,圆括号可用来区分优先顺序。操作符 说明 + 加 - 减 * 乘 / 除 -
提示:SELECT语句为测试、检验函数和计算提供了很好的方法。虽然SELECT通常用户从表中检索数据,但是省略了FROM子句后就是简单的访问和处理表达式。
-
比如:
SELECT 2 * 3 ;
-
输出如下:
+-------+ | 2 * 3 | +-------+ | 6 | +-------+ 1 row in set (0.00 sec)
-