mysql 截取指定位置后面的所有的字符

mysql 截取指定位置后面的所有的字符,第1张

1、mysql截取字符串后几位的两个常用函数:right()和substring()。

2、right()函数语法示例。

3、回车执行,查看right()函数截取的字符串。

4、substring()函数语法示例。

5、回车执行,查看substring()函数截取的字符串。

正常的sql拼接成json还方便。

CONCAT('\"app\":{\"time\":\"', DATE_FORMAT(time, "%Y-%m-%d %T"), '\",\"days\":', days,

case when typeTime is null then '' else CONCAT(',\"typeTime\":\"', DATE_FORMAT(typeTime, "%Y-%m-%d %T"), '\"') end,'}')

随机文本来了

学富五车:再美的气质,也掩盖不了你才华本质 足智多谋:脑力使用积极分子,非你莫属 仗义执言:你的见解,面面俱到,深入人心 火眼金睛:独特的洞察力,总能获悉一切 见多识广:最美的阅历,就是沿路的风景 责任担当:先天下之忧而忧,后天下之乐而乐

从上面可以看的出,它们之间一一对应的。

唯独那些随机文本着实思考片刻。来,我们层层剖析它。

截取文本

mysql中怎么从数组中取随机的文本,参考substring_index函数。分为两步走,第一步先去倒数开始往前数倒数几位,第二步再从新的数组中取第一位。

substring_index(substring_index(array, '符合间隔', -n), '符合间隔', 1)

构造随机因子

现在再看看这个随机因子怎么取,参考rand()函数。

因为取的是-1到-7之间的随机数。所以最终的效果就是如下。

-floor(rand()*7+1)

取随机范围内的值可以参考这个公式

FLOOR(start_num + RAND() * (end_num - start_num + 1))

开始第一次截取

随机串截取方法有了,随机数也有了,开干。

select user_id, CONCAT('\"desc\": {\"label\":\"',

substring_index(substring_index('学富五车足智多谋仗义执言火眼金睛见多识广责任担当乐观积极','',-FLOOR(rand()*7+1)),'',1),'\"',

',\"description\": \"', substring_index(substring_index('再美的气质,也掩盖不了你才华本质脑力使用积极分子,非你莫属你的见解,面面俱到,深入人

MySQL里面可以截取字符串的方法还是很丰富的:

# 从左侧截取,截取指定长度

left(str,len)

# 右侧

right(str,len)

# 从中间某个位置截取指定长度

MID(str,pos,len)

# 同上

SUBSTR(str FROM pos FOR len)

# 从某个位置开始之后所有的字符

SUBSTR(str,pos)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6639239.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存