SQL之SELECT语句-计算字段

计算字段

计算字段的作用是:将数据库中检索出的数据进行转换、计算或格式化,从而达到应用程序的需求。

计算字段是运行时在SELECT语句内创建的。

字段(field) 基本上与列(column)的意思相同,经常互换使用,不过数据库列一般称为列,而术语字段通常用在计算字段的连接上。

客户机与服务器的格式
可在SQL语句内完成的许多转换和格式化工作都可以直接在客户机应用程序内完成。但一般来说,在数据库服务器上完成这些操作比在客户机中完成要快得多,因为DBMS就是设计用来快速有效地完成这种处理的。

重要的是要注意到,只有数据库知道SELECT语句中哪些列是实际的表列,哪些列是计算字段。从客户机(如应用程序)的角度来看,计算字段的数据与其他列的数据以相同的方式返回的。

拼接字段

拼接(concatenate)将值联结到一起构成单个值。

在MySQL的SELECT语句中,可使用Concat()函数来拼接两个列。

SELECT Concat(vend_name, '(', vend_country, ')')
FROM vendors
ORDER BY vend_name;

Concat() 拼接串,即把多个串连接起来形成一个较长的串。
Concat()需要一个或多个指定的串,各个串之间用逗号分隔。

SELECT Concat(Rtrim(vend_name), '(', vend_country, ')')
FROM vendors
ORDER BY vend_name;

RTrim()函数去掉值右边的所有空格。

Trim函数 MySQL除了支持RTrim(),还支持LTrim()(去掉串左边的空格)以及Trim()(去掉串左右两边的空格)。

执行计算

计算字段的另一常见用途是对检索出的数据进行算术计算。

SELECT prod_id, 
       quantity, 
       item_price,
       quantity*item_price AS total_price
FROM orderitems
ORDER BY order_num=2009;

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

AS 关键字:对检索出的列赋予别名。

别名(alias)是一个字段或值的替换名。

MySQL支持表的基本算术操作符(+、-、*、/)。此外,可用括号来区分优先顺序。

语句   SQL   SELECT
发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章