数据库操作:创建计算字段

存储在数据库表中的数据一般不是应用程序所需要的格式。下面举几个例子。

如果想要在一个字段中既显示公司名,又显示公司的地址,但这两个信息一般包含在不同的表列中。

列数据是大小写混合的,但报表程序需要把所有数据按大写表示出来。

需要根据表数据进行总数、平均数计算或其他计算。

上述每个例子中,存储在表中的数据都不是应用程序所需要的。我们需要直接从数据库中检索出转换、计算或格式化过的数据。这就是计算字段发挥作用的所在了。计算字段并不实际存储在与数据库表中。计算字段是运行在SELECT语句内创建的。

 

为了说明如何使用计算字段,举个例子。

vendors表包含供应商名和位置信息。假如要生成一个供应商报表,需要在供应商的名字中按照name(location)这样的格式列出供应商的位置。

此报表需要单个值,而表中数据存储在两个列vend_name和vend_country中。此外还需要用括号将vend_country括起来。这些东西都没有明确存储在数据库表中。

我们可以进行拼接(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()函数去掉值右边的所有空格。

LTrim()函数去掉值左边的空格。

Trim()函数去掉值两边的空格。

 

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

SELECT prod_id,quantity,item_price,quantity*item_price AS expanded_price
FROM orderitems
WHERE order_num=2005;

输出中显示的expanded_price列为一个计算字段。

算数操作符:+  -  *  /   都支持。

 

SELECT通常用来从表中检索数据,但可以省略FROM子句以便简单地访问和处理表达式。

例如:SELECT 2*3 将返回6;SELECT Now()返回当前 日期和时间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值