【SQL必知必会】笔记 多列拼接成一列

拼接字段(多列拼接成一列)

  • 拼接(concatenate): 将值联结到一起构成单个值。
  • 多数DBMS使用+或||来实现拼接,MySQL则使用Concat()函数来实现拼接两个列。

假设vendors表中包含供应商名和所在国家的信息。假如要生成一个供应商报表,需要在供应商的名字中按照name(country)这样的格式列出供应商的位置。
此报表需要单个值,而表中数据存储在两个列vend_name和vend_
country中。
SQL语句显示如下(以MySQL为例)

SELECT Concat(vend_name, ' (', vend-country, ')') FROM vendors ORDER BY vend_name;

concat()函数将多列数据拼接在新的一列中,中间用逗号隔开,显示结果如下:
在这里插入图片描述

我们发现,拼接字段的结果中有空格存在,这时候我们可以用R对字段使用trim函数去掉空格

SELECT Concat(RTrim(vend_name), ' (', RTrim(vend-country), '') FROM vendors ORDER BY vend_name;

Rtrim,ltrim,trim函数

  • RTrim():去掉字符串右边的空格
  • LTrim():去掉串左边的空格
  • Trim():去掉字符串左右两边的空格

创建了新的字段之后,我们发现新的字段没有名字,此时我们需要对它命名,SQL语句使用AS 字段名 来进行命名。

SELECT Concat(RTrim(vend_name), ' (', RTrim(vend-country), '') AS vend_title FROM vendors ORDER BY vend_name;

在这里插入图片描述

根据算术计算得到新的字段

比如说,我们知道产品的id,单价和数量,想汇产品的总价(单
价乘以数量 ),所以要增加产品的总价这一个新的字段

SELECT prod_id,quantity,item_price,quantity*item_price AS expanded_price FROM orderitems;

在这里插入图片描述

这样就可以通过计算得到新的字段了,真的非常好用!

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值