1、拼接字段
下面有这样一个场景:在用户表中,有用户昵称和用户个性签名,它们处于两个不同的字段,但是现在需要将这两个字段合并之后格式化再返回,以这样的形式返回:昵称(个性签名)。
这个时候我们就需要用到concat()函数进行字段拼接:
select CONCAT(nick_name,'(',sign,')')
from ums_user
分析:使用Concat()函数拼接字段,即把多个串连接起来形成一个较长的串。Concat()需要一个或多个指定的串,各个串之间用逗号分隔。
需要注意的一点就是,拼接的出来的新字段其实是没有名字的,通常需要使用 AS 来取别名,否则输出的字段名为计算表达式:
select CONCAT(nick_name,'(',sign,')') as userInfo
from ums_user
2、算术计算
计算字段的另一常见用途是对检索出的数据进行算术计算。举一个例子,orders表包含收到的所有订单,orderitems表包含每个订单中的各项物品,下面的SQL语句检索订单号10086中的所有物品:
select pro_id,count,item_price
from orderitems
where order_id = 10086
分析:这段语句将查询该订单中所有商品的价格和数量,但是我们的需求是需要将价格乘以数量,得到购买这项商品的价钱,那么我们就需要用到算术计算:
select pro_id,count,item_price,count*item_price AS expanded_price
from orderitems
where order_id = 10086
分析:输出中显示的expanded_price列为一个计算字段,此计算为quantity*item_price。
同时还支持 “+”、“-”、“*”、“\”的算术运算,有兴趣的小伙伴可以去试试。