关于mysql字段计算

1、拼接字段

1)在MyAQL的select语句中,可使用Concat()函数来拼接两个列:

select Concat(vend_name, '(',vend_country, ')') from vendors order by vend_name;

Concat()拼接串,即把多个串连接起来形成一个较长的串。

Concat()需要一个或多个指定的串,各个串之间用逗号分隔,上面的select语句连接一下4个元素:

存储在vend_name列表的名字;

包含一个空格和一个左圆括号的串;

存储在vend_country列中的国家;

包含一个右圆括号的串。

2)RTrim()函数去掉值右边的所有空格。通过使用RTrim(),各个列都进行了整理:

select Concat(RTrim(vend_name), '(',RTrim(vend_country),')') from vendors order by vend_name;

Trim函数 MySQL除了支持RTrim() (正如刚才所见,它去掉串右边的空格),还支持LTrim() (去掉串左边的空格)以及Trim() (去掉串左右两边的空格)

3)使用别名

别名(alias)是一个字段或值得替换名。别名用AS关键字赋予。

select Concat(RTrim(vend_name), '(', RTrim(vend_country), ')') AS vend_title from vendors order by vend_name;

2、执行算术计算

select prod_id,quantity,item_price,quantity*item_price AS expanded_price from orderitems where order_num = 20005;

MySQL支持+、-、*、\的基本算术操作符外,圆括号可用来区分优先顺序。


注:mysql计算字段运用方便,不过在项目开发中不建议使用,后端需要对数据库进行操作的话有两种处理方式:

  1> 处理交给mysql数据库自己来处理,方法是可以设定mysql定时器,存储过程创建完毕后交由mysql定时处理event事件进行处理即可;

  2>这种就是我们初学者所熟悉的交由后台处理了,如果对数据库的操作需要定时执行的话,可以选择创建一个独立的子线程去单独执行定时任务,    问题是:后台创建线程会消耗系统资源,所以创建线程不宜多,这里有个原则:尽量减少对数据库的数据查询操作;


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dengrz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值