CREATE DEFINER=`root`@`%` FUNCTION `f_base_check_id_number`(number VARCHAR(20)CHARSET utf8) RETURNS tinyint(1)
BEGIN
DECLARE flag BOOL DEFAULT FALSE;
IF (LENGTH(number)=18
AND number REGEXP CONCAT('^(([1][1-5])|([2][1-3])|([3][1-7])|([4][1-6])|([1][0-4])|([6][1-6])|([7][1])|([8][1-2]))', -- 1、2位
'(([0][0-9])|([1][0-9])|([2][0-9])|([3][0-9])|([4][0-3])|([5][1-3])|([8][2])|([9][0]|[1]|[9]))', -- 3、4位
'(([0-3][0-9])|([4][0-4])|([5][1])|([8][1-9])|([9][0-9]))', -- 5、6位
'(([1]([8]|[9])[0-9])|([2]([0]|[0-1])[0-9]))[0-9](0[1-9]|1[0-2])(0[1-9]|1[0-9]|2[0-9]|3[0-1])[0-9]{3}([0-9]|X)') -- 后12位
OR (LENGTH(number)=15
AND number REGEXP CONCAT('^(([1][1-5])|([2][1-3])|([3][1-7])|([4][1-6])|([1][0-4])|([6][1-6])|([7][1])|([8][1-2]))',
'(([0][0-9])|([1][0-9])|([2][0-9])|([3][0-9])|([4][0-3])|([5][1-3])|([8][2])|([9][0]|[1]|[9]))',
'(([0-3][0-9])|([4][0-4])|([5][1])|([8][1-9])|([9][0-9]))',
'(0[1-9]|[1-9][0-9])(0[1-9]|1[0-2])(0[1-9]|1[0-9]|2[0-9]|3[0-1])[0-9]{3}')))
THEN SET flag = TRUE;
END IF;
RETURN flag;
END

mysql 检查一个字符串是不是身份证号的更多相关文章

  1. 《Python CookBook2》 第一章 文本 - 过滤字符串中不属于指定集合的字符 && 检查一个字符串是文本还是二进制

    过滤字符串中不属于指定集合的字符 任务: 给定一个需要保留的字符串的集合,构建一个过滤函数,并可将其应用于任何字符串s,函数返回一个s的拷贝,该拷贝只包含指定字符集合中的元素. 解决方案: impor ...

  2. <!-- str.startsWith('胡') 检查一个 字符串中是否有某字符 返回true false -->& vh 属性

    1.<!-- str.startsWith('胡')  检查一个 字符串中是否有某字符 返回true false --> 2. vh 分享到选择其它项   复制本页链接 版本:CSS3 补 ...

  3. mysql判断一个字符串是否包含某子串 【转】

    文章出处:mysql判断一个字符串是否包含某子串 使用locate(substr,str)函数,如果包含,返回>0的数,否则返回0 例子:判断site表中的url是否包含'http://'子串, ...

  4. 【LeetCode】1461. 检查一个字符串是否包含所有长度为 K 的二进制子串 Check If a String Contains All Binary Codes of Size K

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 统计长度为 K 的子串个数 日期 题目地址:https ...

  5. 【LeetCode】1433. 检查一个字符串是否可以打破另一个字符串 Max Difference You Can Get From Changing an Integer

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 排序 日期 题目地址:https://leetcode ...

  6. mysql判断一个字符串是否包含某子串

    使用locate(substr,str)函数,如果包含,返回>0的数,否则返回0 例子:判断site表中的url是否包含'http://'子串,如果不包含则拼接在url字符串开头 update ...

  7. mysql判断一个字符串是否包含某几个字符

    使用locate(substr,str)函数,如果包含,返回>0的数,否则返回0

  8. PHP定义字符串时单引号和双引号的区别

    一般用单引号或双引号标识一个字符串.单引号串与双引号串,在PHP中的处理是不同的.双引号中的内容可以被解释并被替换,单引号串中的内容则被作为普通字符处理. 例如: $str=6; echo " ...

  9. python 字符串组成MySql 命令时,字符串含有单引号或者双引号导致出错解决办法

    引用自:https://blog.csdn.net/zhaoya_huangqing/article/details/48036839 一.在组成SQL语句并发送命令时完全按照Python中的样式去传 ...

随机推荐

  1. python目标定位(借鉴csdn上大神)

    写博客是为了记录下来,毕竟好多东西记不住,看过就忘了,收藏又太多,还不如搬运到自己博客下面,随时可翻~~~ 近期再学目标识别与定位,看着原理都很简单,但是真自己做,又觉得困难重重. csdn上一个大神 ...

  2. python3 - 默认参数为列表

    默认参数的坑 定义一个函数,传入一个list,添加一个end再返回 1 2 3 def  add_end(L=[]):     L.append('END')     return L 正常调用时,结 ...

  3. Linux系统特点

    自由软件 真正的多用户.多任务操作系统 极强的平台可伸缩性 强大的管理功能 强大的网络功能

  4. tomcat 嵌入式

    背景 开源世界真是有意思,竟然还有这种玩法.以前一直想bs程序如何像cs程序作为安装包形式,这个就是个解决方案. 知识点 将tomcat嵌入到主程序中进行运行,而不是像以前将一个web项目copy到t ...

  5. MySQL联结查询和子查询

    2018-2-24 16:18:12 星期六 今天需要统计一个运营活动的数据, 涉及三个表, 分组比较多 活动描述: 每个人可以领取多张卡片,  好友也可以赠送其卡片, 20或40张卡片可以兑换一个奖 ...

  6. how to avoid inheritance abuse

    Liskov Principle: if S is a subtype of Type T, then any objects of type T may be repalced by objects ...

  7. Linux虚拟串口

    将下列Python代码保存成VitrualCom.py: Code#! /usr/bin/env python #coding=utf-8 import pty import os import se ...

  8. CF 313B

    题意: 给你一个字符串, 然后m次区间查询,求出区间有多少组 str[i] == str[i+1] 就是一个水DP了 有则Dp[i] = Dp[i-1] 无则 Dp[i] = Dp[i-1]: (刚开 ...

  9. HNU 2015暑期新队员训练赛2 H Blanket

    把每个 bi *x + ri ( 0 <= ri <= ai)标记, 输出被标记 0 – N 次的个数 #include<iostream> #include<cstdi ...

  10. java 实现往oracle存储过程中传递array数组类型的参数

    注:本文来源于 <  java 实现往oracle存储过程中传递array数组类型的参数  >最近项目中遇到通过往存储过程传递数组参数的问题, 浪费了N多个小时,终于有点头绪. 具体的代码 ...