当前位置:项目开发->项目经验 ->mysql将一个字段拼接并加入随机数字的实现

原创版权标志mysql将一个字段拼接并加入随机数字的实现

作者:codexia  发表时间:2018/6/16 0:46:10  阅读:
[摘要] 在数据库的数据处理的过程中,我们可能会遇到这种情况,我们需要将一个字段批量处理一下,需要按照一个格式来处理,但是因为数据量大,手动处理可能不太现实,那么就需要直接使用sql语句来实现了。因为这是比较复杂点的功能,用的少,所以很多人都不太熟悉,就此我将我的方法介绍给大家。
使用支付宝扫码领红包,余额宝付款才可以使用红包哦!不要忘记哈。每天扫一次,天天赚红包!!可以将二维码保存到手机,每天直接扫码领红包啦!!
    在数据库的数据处理的过程中,我们可能会遇到这种情况,我们需要将一个字段批量处理一下,需要按照一个格式来处理,但是因为数据量大,手动处理可能不太现实,那么就需要直接使用sql语句来实现了。因为这是比较复杂点的功能,用的少,所以很多人都不太熟悉,就此我将我的方法介绍给大家。
    那么在这里演示的规则是这样的:我需要在一个字段的前面统一加一个前缀,然后取现有字段的后几个字符,再在后面接上1000以内的随机数字的字符串,然后更新到表里。
    功能点提取:前缀字符串+字符串截取末尾字符串+随机数字字符串+字符串拼接。
1.前缀字符串
    对于前缀字符串,很简单。我们只要输入一个字符串即可。
2.字符串截取末尾字符串
    截取字符串末尾几个字符,则需要mysql的字符串截取函数,截取末尾的用right(字段名,截取的长度),截取开头可以用left(字段名,截取的长度)等。
3.随机数字字符串
    mysql产生随机数字字符串,则需要使用函数rand()。将rand()*1000就可以得到0-999之间的数,不过是带有小数点的,所以我们使用floor函数返回小于或等于所给数字表达式的最大整数。此时我们得到的还是数字,如果要和其他字符串拼接,我们就需要将数字转为字符串。转换数据类型,mysql使用cast函数。
    cast语法如下:
cast(值 as 数据类型 )
    数据类型基本和C语言一致。int为整形,char为字符。字符串使用char。更多详细的,请查询mysql的相关文档。
4.字符串拼接
    最后我们得到了输入的字符串,截取后的字符串和转换后的字符串,最后就是要将三个字符串拼接起来。拼接字符串使用的mysql函数为concat(字符串1,字符串2,字符串3,...)。此函数可以拼接N个字符串为一个完整的字符串,按照填进去的顺序拼接。
5.查询处理后的字符串
select CONCAT('pre-' , RIGHT(content,2),cast( floor(rand()*1000) as char) ) from advice 

    这个sql语句是将建议表advice的content字段的内容作了如上的处理。如果需要更新,按照如下语句执行就可以了:
update advice set content = CONCAT('pre-' , RIGHT(content,2),cast( floor(rand()*1000) as char) )

    提醒一下,更新时记得要小心,谨慎操作哈。
微信扫码关注公众号CPP技术网,微信号cpp_coder,关注我们的公众号,阅读更多精彩内容!每天还可以领取大红包哦!!!每天还可以领取大红包哦!!!每天还可以领取大红包哦!!!
文章来源:C++技术网原创文章版权为网站和作者共同所有,会员文章禁止转载。非会员文章转载做好本文超链接即表示授权转载。通过文章下面的分享按钮可以自由分享所有文章。

返回顶部

在线提问
问题标题:
问题描述:(简陋的描述会导致问题被最后回答、没有针对性回答甚至无法解答。请确保问题描述的足够清楚。)