7 创建计算字段

7.1 计算字段

直接从数据库中检索出转换、计算或格式化过的数据;而不是检索出数据,然后再在客户机应用程序或报告程序中重新格式化 

7.2 拼接字段

解决办法是把两个列拼接起来。在MySQLSELECT语句中,可使用Concat()函数来拼接两个列。 

SELECT Concat ( vend_name, '(' , vend_country, ')' ) 
AS vend_title
FROM Vendors;

上述SELECT返回一个名字叫做vend_title的列,包含的信息有:

  • 存储在vend_name列中的名字;
  • 包含一个空格和一个左圆括号的串; 
  • 存储在vend_country列中的国家; 
  • 包含一个右圆括号的串 

也可以用TRIM(),RTRIM(),LTRIM()来去除空格

SELECT Concat ( RTRIM( vend_name ), '(' , RTRIM( vend_country ), ')' ) 
AS vend_title
FROM Vendors;

别名的使用:将创建的一个新列用AS关键字赋予别名,从而方便在客户端中应用它,就像它是一个实际的表列一样。(见上例)

7.3 执行算数运算

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


 


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

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


MySQL支持下表中列出的基本算术操作符。此外,圆括号可用来区分优先顺序

 





 

 

posted @ 2018-12-20 17:32  小林子奋斗的点滴  阅读(218)  评论(0编辑  收藏  举报