MYSQL之巧用字符函数做数据筛选
发布时间 - 2018-01-24 00:00:00 点击率:次本文主要介绍了mysql 一个巧用字符函数做数据筛选的题,需要的朋友可以参考下,希望能帮助到大家。
问题描述:
结构:
test 有两个字段,
分别是col1和col2,都是字符字段,
里面的内容都是用,号分隔的三个数字,并且是一一对应的,
比如col1内容是:26,59,6
col2内容是:1502.5,1690,2276.77
一一对应就是26的值是1502.5,59是1690,6对应2276.77
搜索条件:
选择一个id,比如选择59,再输入一个数字,比如:2000
然后就是搜索col1中存在id=59的记录,然后搜索col2小于2000,即1690
举例:
如有以下三条记录,搜索id为59,值小于2000的记录:
26,59,6 | 1502.5,1690,2276.77
59,33,6 | 3502.1,1020,2276.77
22,8,59 | 1332.6,2900,1520.77
搜索到这三个记录存在id为59,之后判断第二个搜索条件应为(即用对应id位置的数字对比):
16903502.1>2000
1520.77
drop table test; create table test ( col1 varchar(100),col2 varchar(100)); insert test select '26,59,6', '1502.5,1690,2276.77' union all select '59,33,6', '3502.1,1020,2276.77' union all select '22,8,59', '1332.6,2900,1520.77'; select col1,col2 from (select *,find_in_set('59',col1) as rn from test) k where substring_index(concat(',',substring_index(col2,',',rn)),',',-1) <'2000';
+---------+---------------------+
| col1 | col2 |
+---------+---------------------+
| 26,59,6 | 1502.5,1690,2276.77 |
| 22,8,59 | 1332.6,2900,1520.77 |
+---------+---------------------+
相关推荐:
php替换字符串中的一些字符函数str_ireplace()
php从指定ASCII值返回字符函数chr()
MySQL数据库之字符函数详解
# mysql
# 都是
# 如有
# 希望能
# 第二个
# 这三个
# 三条
# 即用
# 巧用
# 有两个
# pre
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】
如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
如何在腾讯云服务器快速搭建个人网站?
如何在服务器上三步完成建站并提升流量?
Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理
Laravel如何使用Eloquent进行子查询
魔方云NAT建站如何实现端口转发?
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】
如何确保FTP站点访问权限与数据传输安全?
Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
Laravel distinct去重查询_Laravel Eloquent去重方法
Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全
香港服务器租用费用高吗?如何避免常见误区?
Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件
网站制作免费,什么网站能看正片电影?
Laravel如何实现用户密码重置功能?(完整流程代码)
在centOS 7安装mysql 5.7的详细教程
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
浅谈Javascript中的Label语句
深圳网站制作平台,深圳市做网站好的公司有哪些?
Laravel如何创建自定义Artisan命令?(代码示例)
微信h5制作网站有哪些,免费微信H5页面制作工具?
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
网站页面设计需要考虑到这些问题
微信小程序 require机制详解及实例代码
香港服务器网站推广:SEO优化与外贸独立站搭建策略
jQuery 常见小例汇总
深圳网站制作培训,深圳哪些招聘网站比较好?
JavaScript中如何操作剪贴板_ClipboardAPI怎么用
html5audio标签播放结束怎么触发事件_onended回调方法【教程】
android nfc常用标签读取总结
JavaScript中的标签模板是什么_它如何扩展字符串功能
1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤
什么是javascript作用域_全局和局部作用域有什么区别?
Android GridView 滑动条设置一直显示状态(推荐)
长沙企业网站制作哪家好,长沙水业集团官方网站?
Swift中循环语句中的转移语句 break 和 continue
网站制作企业,网站的banner和导航栏是指什么?
潮流网站制作头像软件下载,适合母子的网名有哪些?
Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
,南京靠谱的征婚网站?
如何安全更换建站之星模板并保留数据?
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议


rop table test;
create table test ( col1 varchar(100),col2 varchar(100));
insert test select
'26,59,6', '1502.5,1690,2276.77' union all select
'59,33,6', '3502.1,1020,2276.77' union all select
'22,8,59', '1332.6,2900,1520.77';
select col1,col2
from (select *,find_in_set('59',col1) as rn from test) k
where substring_index(concat(',',substring_index(col2,',',rn)),',',-1)
<'2000';