myysql的正则表达式

上周遇见一个需求,有这样一棵树:

点击上级,展现所有子集,点击集团,显示所有产线(例子)

这个时候有两种方式:

添加产线时,将集团、事业部、公司、车间的id存起来。

然后点击查询时,将不同的id带入。

这样做的缺点就是,查询会很麻烦,区分查询。

另一种是:

一个treePath字段,存放树路径id:

集团id,事业部id,公司id,车间id,产线id

例子:点击集团时,将集团id和treePath进行in比较。如果包含,就说明是这个集团的数据。

 CONCAT (',',tree_path,',' ) LIKE CONCAT( '%,',集团id,',%' )

 先将源数据加一个左右各一个逗号,保证不会出现这种情况!!!

treePath:1001,221,333

集团id:10

挖槽,直接GG

1001也符合!!

所以我们左右各加一个逗号变成:

treePath:,1001,221,333,

集团id:,10,

哈哈哈哈哈哈哈,这样就不会出现那种情况了,我真是天才啊!

用正则就是这样: 

CONCAT (',',tree_path,',') REGEXP ',(集团id),'

话不多说,直接上态度:

select *from `user` as u where u.`name` REGEXP 'ab?c';-- c出现0次或者1次select *from `user` as u where u.`name` REGEXP 's*c';-- s出现0次或者多次select *from `user` as u where u.`name` REGEXP 'ab+c';-- b出现1次以上的字符select *from `user` as u where u.`name` REGEXP 'a.c';-- 以a开始,c结束。.可以代表无数个,相当于模糊查询的%select *from `user` as u where u.`name` REGEXP 'b{2,}';-- b连续出现2次以上select *from `user` as u where u.`name` REGEXP 'b{2}';-- b连续出现2次select *from `user` as u where u.`name` REGEXP 'b{2,3}';-- b连续出现2-3次select *from `user` as u where u.`name` REGEXP 'b{2}|a{3}';-- b连续出现2次或者a连续出现3次select *from `user` as u where u.`name` REGEXP '[acs]';-- 包含这三个字母组成select *from `user` as u where u.`name` REGEXP '[a-b]';-- 包含a-c组成select *from `user` as u where u.`name` REGEXP '^a';-- 以a开头select *from `user` as u where u.`name` REGEXP 's$';-- 以c结尾

 

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

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

相关文章

数据结构【查找篇】

数据结构【查找篇】 文章目录 数据结构【查找篇】前言为什么突然想学算法了?为什么选择码蹄集作为刷题软件? 目录一、顺序查找二、折半查找三、 二叉排序树的查找四、红黑树 结语 前言 为什么突然想学算法了? > 用较为“官方”的语言讲&am…

普中STM32-PZ6806L开发板(HAL库函数实现-读取内部温度)

简介 主芯片STM32F103ZET6,读取内部温度其他知识 内部温度所在ADC通道 温度计算公式 V25跟Avg_Slope值 参考文档 stm32f103ze.pdf 电压计算公式 Vout Vref * (D / 2^n) 其中Vref代表参考电压, n为ADC的位数, D为ADC输入的数字信号。 实现…

人工智能在银行运营中的运用

机器学习在金融领域的运用:银行如何以最优的方式抓住 AI 机会? 大型企业若想获得超越竞争对手的优势,那么采用 AI 作为其业务战略是他们的重要任务,而在这方面,大型银行走在了前面。银行开始将 AI 和机器学习应用于前…

了解并使用django-rest-framework-jwt

一 JWT认证 在用户注册或登录后,我们想记录用户的登录状态,或者为用户创建身份认证的凭证。我们不再使用Session认证机制,而使用Json Web Token(本质就是token)认证机制。 Json web token (JWT), 是为了在网络应用环…

专题一_双指针(一)

文章目录 283.移动零题目解析讲解算法原理扩展编写代码 1089.复习零题目解析讲解算法原理编写代码 202.快乐数题目解析讲解算法原理证明编写代码 11.盛最多水的容器题目解析讲解算法原理暴力解法优秀的解法时间复杂度分析 编写代码 283.移动零 题目链接 题目解析 题目还是比较…

ThinkPHP6.0任意文件上传 PHPSESSION 已亲自复现

ThinkPHP6.0任意文件上传 PHPSESSION 已亲自复现 漏洞名称漏洞描述影响版本 漏洞复现环境搭建安装thinkphp6漏洞信息配置 漏洞利用 修复建议 漏洞名称 漏洞描述 2020年1月10日,ThinkPHP团队发布一个补丁更新,修复了一处由不安全的SessionId导致的任意文…

【GlobalMapper精品教程】069:中文属性表乱码问题及解决方法

参考阅读:【ArcGIS Pro微课1000例】0012:ArcGIS Pro属性表中文乱码完美解决办法汇总 文章目录 一、Globalmapper默认字符集设置二、shp属性表乱码三、转出的kmz乱码一、Globalmapper默认字符集设置 中文字体乱码通常是由字符编码不匹配造成的。 打开Globalmapper软件,点击工…

【动态规划】【字符串】扰乱字符串

作者推荐 视频算法专题 涉及知识点 动态规划 字符串 LeetCode87扰乱字符串 使用下面描述的算法可以扰乱字符串 s 得到字符串 t : 如果字符串的长度为 1 ,算法停止 如果字符串的长度 > 1 ,执行下述步骤: 在一个随机下标处将…

java struts2教务管理系统Myeclipse开发mysql数据库struts2结构java编程计算机网页项目

一、源码特点 java struts2 教务管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助 struts2 框架开发,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境 为TOMCAT7.0,Myeclipse8.5开发,数据库…

【ikbp】数据可视化DataV

天天查询一些数据,希望来一个托拉拽的展示,部署体验一下可视化大屏 快速搭建快速查询实时更新简单易用 启动服务 数据可视化 静态查询 配置数据 过滤数据 分享

系列七、Ribbon

一、Ribbon 1.1、概述 Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具,是Netflix发布的一款开源项目,其主要功能是提供客户端的软件负载均衡算法和服务调用,Ribbon客户端组件提供一系列完善的配置项,例如&#xff1a…

《低功耗方法学》翻译——卷首语

就目前半导体的发展现状来说,我们国家还处在奋力追赶阶段。在我国半导体行业历经多轮技术制裁的今天,我们不得不承认的是,半导体技术最先进的就是美国。我国早在上世纪六七十年代就有涉足半导体技术,大量华裔留美的爱国人士回国为…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《基于碳捕集与封存-电转气-电解熔融盐协同的虚拟电厂优化调度》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主的专栏栏目《论文与完整程序》 这个标题涉及到多个关键概念,让我们逐一解读: 碳捕集与封存(Carbon Capture and Storage,CCS)&a…

redis 三主六从高可用dockerswarm高级版(不固定ip)

redis集群(cluster)笔记 redis 三主三从高可用集群docker swarm redis 三主六从高可用docker(不固定ip) redis 三主六从高可用dockerswarm高级版(不固定ip) 此博客解决,redis加入集群后,是用于停掉后重启,将nodes.conf中的旧的Ip替换为新的…

SQL 在已有表中修改列名的方法

文章目录 1. MySQL2. SQL Server3. Oracle / PostgreSQL Question: 假设有一张表 StudentInfo,表中有一个列名是 Student_Name ,想要把这个列名改成 StudentName 应该如何操作? 建表语句如下: --建表 if object_id(S…

【Nginx】反向代理和负载均衡

反向代理 nginx 反向代理,就是将前端发送的动态请求由 nginx 转发到后端服务器。 server {listen 80;server_name localhost;# 反向代理,处理管理端发送的请求location /api/ {proxy_pass http://localhost:8080/admin/;#proxy_pass http://webservers/…

2023我的编程之旅-地质人的山和水

引言 大家好,我是搞地质的。外行人有的说我们游山玩水,有的说我们灰头土脸,也有的说我们不是科学。 而我说,这是一门穷极一生青春,值得奉献的行业。这是一门贴近民生,又拥抱自然的学科。他的真理性在于探…

【数据结构】一些数组面试题以及顺序表的思考

简单不先于复杂,而是在复杂之后。 文章目录 1. 数组相关面试题2. 顺序表的问题及思考 1. 数组相关面试题 1.原地移除数组中所有的元素val,要求时间复杂度为O(N),空间复杂度为O(1)。 int removeElement(int* nums, int numsSize, int val) {i…

网络安全—部署CA证书服务器

文章目录 网络拓扑安装步骤安装证书系统安装从属证书服务器 申请与颁发申请证书CA颁发证书 使用windows Server 2003环境 网络拓扑 两台服务器在同一网段即可,即能够互相ping通。 安装步骤 安装证书系统 首先我们对计算机名进行确认,安装了证书系统后我…

59.网游逆向分析与插件开发-游戏增加自动化助手接口-文字资源读取类的C++还原

内容来源于:易道云信息技术研究院VIP课 上一个内容:游戏菜单文字资源读取的逆向分析-CSDN博客 之前的内容:接管游戏的自动药水设定功能-CSDN博客 码云地址(master分支):https://gitee.com/dye_your_fing…