MYSQL 一個巧用字符函數(shù)做數(shù)據(jù)篩選的題
問題描述:
結(jié)構(gòu):
test 有兩個字段,
分別是col1和col2,都是字符字段,
里面的內(nèi)容都是用,號分隔的三個數(shù)字,并且是一一對應(yīng)的,
比如col1內(nèi)容是:26,59,6
col2內(nèi)容是:1502.5,1690,2276.77
一一對應(yīng)就是26的值是1502.5,59是1690,6對應(yīng)2276.77
搜索條件:
選擇一個id,比如選擇59,再輸入一個數(shù)字,比如:2000
然后就是搜索col1中存在id=59的記錄,然后搜索col2小于2000,即1690<2000
舉例:
如有以下三條記錄,搜索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,之后判斷第二個搜索條件應(yīng)為(即用對應(yīng)id位置的數(shù)字對比):
1690<2000
3502.1>2000
1520.77<2000
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 |
+---------+---------------------+
相關(guān)文章
MyBatis-Plus查詢不到數(shù)據(jù)但使用SQL可以查詢到數(shù)據(jù)的問題排查解決
在使用MyBatis-Plus時,有時會出現(xiàn)查詢不到數(shù)據(jù)的問題,而直接執(zhí)行SQL卻能查詢到數(shù)據(jù),本文將介紹如何排查和解決這一問題,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-09-09MySql如何使用not in實現(xiàn)優(yōu)化
這篇文章主要介紹了MySql如何使用not in實現(xiàn)優(yōu)化,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-03-03windows下mysql 8.0.16 安裝配置方法圖文教程
這篇文章主要為大家詳細(xì)介紹了windows下mysql 8.0.16 安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-05-05MySQL之使用WITH子句和臨時表達(dá)式進(jìn)行數(shù)據(jù)分析和篩選方式
這篇文章主要介紹了MySQL之使用WITH子句和臨時表達(dá)式進(jìn)行數(shù)據(jù)分析和篩選方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-04-04Mysql TIMESTAMPDIFF函數(shù)示例詳解
這篇文章主要介紹了Mysql TIMESTAMPDIFF函數(shù)示例詳解,TIMESTAMPDIFF函數(shù)返回datetime_expr2 - datetime_expr1的結(jié)果,其中datetime_expr1和datetime_expr2可以是DATE或DATETIME類型值,本文給大家詳細(xì)講解,需要的朋友可以參考下2023-03-03一文搞清楚MySQL count(*)、count(1)、count(col)區(qū)別
本文主要介紹了MySQL count(*)、count(1)、count(col)區(qū)別,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03