sql两个字段拼接_7.创建计算字段

在数据库存储的数据,一般不是应用程序所需要的格式,比如这几个例子:

  1. 需要显示公司名,还要显示公司地址,但是这两个信息在表格中是 2 个列。
  2. 列数据是大小写混合的,但是应用程序需要把所有数据按大写表示出来。
  3. 订单表示只有订单商品的数量和单价,应用程序需要商品的总价格。
  4. 需要根据表的数据进行总数、平均数的计算。

所以计算字段是运行在 select 语句中创建的,并不实际存在于数据库中。

(注:虽然这些计算在客户端也能完成,但是如果放在数据库服务器上做,往往要快得多)

拼接字段

有些 DBMS 使用 + ,有些使用 || 来拼接。

select VEND_NAME || '(' || VEND_COUNTRY || ')' from VENDORS order by VEND_NAME;

如果取出来的字段由于数据类型的原因,有些空格的话,可以使用 rtrim 函数处理一下,rtrim 函数表示去掉右边(结尾)的所有空格 。

select rtrim(VEND_NAME) || '(' || rtrim(VEND_COUNTRY) || ')'
from VENDORS
order by VEND_NAME;

使用别名

这样拼接出来的列的列名是比较乱的,所以我们需要使用 as 来重新定义一个名字,这样方便后续获取这列的数据。

57143116c26461f59a9ec0a88b605a3a.png
select rtrim(VEND_NAME) || '(' || rtrim(VEND_COUNTRY) || ')' as vent_mixin_value
from VENDORS
order by VEND_NAME; 

826754a3f4b24d8d49757f194c24a153.png

执行算术计算

SQL 语句支持 +-*/ 这些算术操作符,同样可以使用圆括号来确定优先级。

select PROD_ID, QUANTITY, ITEM_PRICE, (ITEM_PRICE * QUANTITY) as total_price
from ORDERITEMS
where ORDER_NUM = 20008; 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值