mysql 123456_MySQL字符串中抽取数值的方法 select -(-'123456@163.com'); 很牛逼

MySQL的字符串函数非常多,以至于有时候我不知道该如何灵活的使用这些函数。

字符串基本信息函数     collation  convert,char_length等

加密函数   password(x),encode,  aes_encrypt

字符串连接函数   concat(x1,x2,….)

修剪函数  trim,ltrim,rtrim

子字符串操作函数 substring(x,start,length),mid(x,start,length)

字符串复制函数  repeat,space

字符串比较函数  strcmp

字符串逆序函数 reverse

如果真给一个场景,还真说不定能够拍胸脯适合。

假设我有如下的需求,比如邮箱注册账号,指定账号是以数字开头,内容如下:

1234@mail.com

012345@aa.mail.com

1234mm@mail.com

1234test@mail.com

如果需要把里面的数字提取出来,有什么好的办法呢。

如果使用字符串函数,一种方式就是使用正则,或者直接给定条件来做过滤。

比如replace(xxxx,right(xxx))

还有一种思路就是创建一个函数或者存储过程,通过结构化的方法来做转换。

如上的几种方法其实都比较麻烦,还有什么办法呢,我就举一反三,给出两个来。

第一个解法就是使用字符串的数据类型转换。

比如:

mysql> select cast('123456@xx.com' as unsigned);

+------------------------------------+

| cast('123456@xx.com' as unsigned) |

+------------------------------------+

|                             123456 |

+------------------------------------+

1 row in set, 1 warning (0.00 sec)

我们可以很明显看到结果和一个警告。

mysql> show warnings;

+---------+------+-----------------------------------------------------+

| Level   | Code | Message                                             |

+---------+------+-----------------------------------------------------+

| Warning | 1292 | Truncated incorrect INTEGER value: '123456@163.com' |

+---------+------+-----------------------------------------------------+

1 row in set (0.00 sec)

解法二:

这个解法更简单,有种鬼斧神工的感觉。

mysql> select -(-'123456@163.com');

+----------------------+

| -(-'123456@163.com') |

+----------------------+

|               123456 |

+----------------------+

1 row in set, 1 warning (0.00 sec)

如果是前面含有冗余的数字,也是可以转换的。

mysql> select -(-'012345@aa.mail.com');

+--------------------------+

| -(-'012345@aa.mail.com') |

+--------------------------+

|                    12345 |

+--------------------------+

1 row in set, 1 warning (0.00 sec)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/531757.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ZZUOJ 1199 大小关系(拓扑排序,两种方法_判断入度和dfs回路判断)

1 /*2 这道题如果按照度为0的节点来判断的时候,将度为0的节点和其相连的节点(度数并减去1) 3 从图中去掉,如果度为0的节点的个数为0个但是图中的节点没有都去掉的 时候那么说明4 出现了回路!用这种方法必须将重边去除掉! …

matlab画图plot设置字体_R语言科研画图字体格式设置

作者:黄天元,复旦大学博士在读,热爱数据科学与开源工具(R),致力于利用数据科学迅速积累行业经验优势和科学知识发现,涉猎内容包括但不限于信息计量、机器学习、数据可视化、应用统计建模、知识图…

hdu3339 In Action(Dijkstra+01背包)

1 /*2 题意:有 n 个站点(编号1...n),每一个站点都有一个能量值,为了不让这些能量值连接起来,要用 3 坦克占领这个站点!已知站点的 之间的距离,每个坦克从0点出发到某一个站点&…

在手机上安装youget_you-get 安装和用法

Usage: you-get [OPTION]... [URL]...Startup options:-V | --version 版本信息-h | --help 帮助Dry-run options: (no actual downloading)-i | --info 列出所有可获取的视频信息-u | --url 打印URLs的提取出信息,真实链接地址--json 打印URLs的JSON格式Download o…

ZZUOJ1196: 单调数

1 /*2 注意的事项:是输出小于 10^n的正整数的个数哦!开始的时候总比样例输出多一个数,3 纠结了好久,原来是 0加了进去了!4 5 dpI[n][m]表示的是第n位添加数字m(0....9)的构成单调递增数个数 6 …

mac 爱普生打印机驱动_epson l360 mac版驱动下载-爱普生l360驱动Mac版最新版 - 极光下载站...

爱普生l360驱动苹果电脑版是专为mac用户所设计打造, 当你的电脑中安装了本驱动程序以后,就可以非常轻松的进行操作打印了,与该型号的打印机相匹配,将会带给你最流畅的打印体会!爱普生l360打印机介绍--打印质量分辨率可…

mysql 生成 javabean_从MySQL快速生成JavaBean

SELECTCONCAT(/**\n*,COLUMN_COMMENT,\n*/\n), -- 注解CONCAT(Column(name ",column_name,")\n), -- JPA字段注解( -- 根据表定义的字段生成相应的 Java类型CASEdata_typeWHEN varcharTHEN private StringWHEN bigintTHEN private IntegerWHEN intTHEN private Inte…

poj2253 Frogger(最短路变型或者最小生成树)

1 /*2 题意:就是源点到终点有多条的路径,每一条路径中都有一段最大的距离!3 求这些路径中最大距离的最小值!4 5 Dijkstra, Floyd, spfa都是可以的!只不过是将松弛的条件变一下就行了!6 7 …

python包mdure_Python hashlib模块实例使用详解

这篇文章主要介绍了Python hashlib模块实例使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下hashlib模块主要的作用:加密保护消息安全,常用的加密算法如MD5,SHA1等。1、…

UVAoj 348 - Optimal Array Multiplication Sequence

1 /*2 题意:矩阵相乘的最少的步数3 dp[i][j]min(dp[i][j], dp[i][k]dp[k1][j]num[i-1]*num[k]*num[j]);4 表示的是第i个矩阵到第j个矩阵相乘的最少步数5 sign[i][j]表示的是第i个矩阵到第j个矩阵相乘的最少步数是由第i个矩阵到第sign[i][j]个矩阵相…

raft协议 MySQL 切换_Raft 协议实战系列(二)—— 选主

注:本文原创,转载请标明出处。欢迎转发、关注微信公众号:Q的博客。 不定期发送干货,实践经验、系统总结、源码解读、技术原理。本文目的笔者期望通过系列文章帮助读者深入理解Raft协议并能付诸于工程实践中,同时解读不…

codeforce Pashmak and Buses(dfs枚举)

1 /*2 题意:n个同学,k个车, 取旅游d天!3 要求所有的学生没有两个或者两个以上的在同一辆车上共同带d天! 输出可行的方案!4 5 对于d行n列的矩阵,第i行第j列表示的是第i天第j个同学所…

怎样用mysql查询测试_如何测试数据库查询优化器

我一直认为,查询优化器(Query Optimizer,后面简称优化器)一直是数据库领域 Top 级别的 hardcore 技术,自己也一直尝试去深入理解,但每每看到 TiDB 代码里面那一大坨 plan 的代码,我就望而生畏了,就像是『可…

poj2060Taxi Cab Scheme(二分图匹配)

1 /*2 题意: 出租车 有一个出发的时间,从点(a, b)到点(c, d),时间为3 abs(a-c)abs(b-d)! 一辆车可以在运完一个乘客后运另一个乘客, 4 条件是此车要在预约开始前一分钟之前到达出发地,…

二级java考什么_计算机二级Java考试资料!

Where领?基本要求1 . 掌握 Java 语言的特点、实现机制和体系结构。2 . 掌握 Java 语言中面向对象的特性。3 . 掌握 Java 语言提供的数据类型和结构。4 . 掌握 Java 语言编程的基本技术。5 . 会编写 Java 用户界面…

二分匹配最大匹配的理解(附图解)

定义一个PXP的有向图中,路径覆盖就是在图中找一些路径,使之覆盖了图中的所有顶点,且任何一个顶点有且只有一条路径与之关联;(如果把这些路径中的每条路径从它的起始点走到它的终点,那么恰好可以经过图中的每…

poj 2226 Muddy Fields(合理建图+二分匹配)

1 /*2 题意:用木板盖住泥泞的地方,不能盖住草。木板任意长!可以重叠覆盖! *表示泥泞的地方,.表示草!3 思路:4 首先让我们回忆一下HDU 2119 Matrix这一道题,一个矩阵…

java验证码工具_java 验证码工具

importjavax.imageio.ImageIO;import java.awt.*;importjava.awt.image.BufferedImage;importjava.io.IOException;importjava.io.OutputStream;importjava.util.Random;public classCaptchaUtils {private final static Object lock newObject();/*** 图片的宽度。*/private …

Floyd算法的理解

转载于:https://www.cnblogs.com/hujunzheng/p/3919226.html

http get post java_java发送http的get、post请求实现代码

Http请求类package wzh.Http;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.URL;import java.net.URLConnection;import java.util.List;import java.util.Map;public class HttpRe…