存储在数据库表中的数据一般不是应用程序所需要的程序
- 计算字段
我们需要直接从数据库中检索出转换、计算或格式化过的数据,而不是检索出数据,然后再在客户机应用程序或报告程序中重新格式化。这就是计算字段作用。
- 拼接字段
# 创建一个格式为name(location)的供应商报表
select concat(vend_name,'(',vend_country,')')
from vendors
order by vend_name;
# concat(,拼接函数
# 注意⚠️:多数DBMS使用+或者||实现拼接,而MySQL使用concat()函数
# 使用trim()函数去掉串左右两边的空格。rtrim()去掉右边的空格,同理ltrim()
select concat(rtrim(vend_name),'(',rtrim(vend_country),')')
from vendors
order by vend_name;
# 引用别名as。为一个列指定一个别名
select concat(rtrim(vend_name),'(',rtrim(vend_country),')') as vend_title
from vendors
order by vend_name;
# 任何客户机都可以使用这个别名引用这个列,就像一个实际的列一样
- 执行算数计算
# 检索订单号为20005中的所有物品
select prod_id,quantity,item_price
from orderitems
where order_num = 20005;
# 总物品的价格
select prod_id,quantity,item_price,quantity*item_price as expanded_price
from orderitems
where order_num = 20005;
- MySQL算数操作符
操作符 | 说明符 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
- 如何测试计算
MySQL提供了测试和实验函数和计算的一个很好的方法
select 3*2; #返回6
select trim('abc'); #返回abc