MYSQL 乙個巧用字元函式做資料篩選的題

2022-09-25 19:15:11 字數 1281 閱讀 4533

問題描述:

結構:test 有兩個字段,

分別是col1和col2,都是字元字段,

裡面的內容都是用,號分隔的三個數字,並且是一一對應的,

比如col1內容是:26,59,6

col2內容是:1502.5,1690,2276.77

一一對應就是26的值是1502.5,59是1690,6對應2276.77

eobvedsb

搜尋條件:

選擇乙個id,比如選擇59,再輸入乙個數字,比如: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,之後判斷第二個搜尋條件應為(即用對應id位置的數字對比):

1690<2000

3502.1>2000

1520.77<2000

drop tabl程式設計客棧e 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 s程式設計客棧ubstring_index(concat(',',substring_index(col2,',',rn)),',',-1)

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

| col1    | col2             &nb程式設計客棧sp;  |

| 26,59,6 | 1502.5,1690,2276.77 |

| 22,8,59 | 1332.6,2900,1520.77 |

本文標題: mysql 乙個巧用字元函式做資料篩選的題

本文位址: /shujuku/mysql/191483.html

乙個函式分配做

問題 當乙個函式返回 返回值 可能表明 發生了乙個錯誤 123 declare an array of 10 integers int pandata new int 10 pandata 5 3 你能確定的假設可能違反了?答案是,運營商新的 實際上是呼叫乙個函式分配做 如果使用者記憶體失敗。如果發...

乙個隨機數生成函式

include include include 乙個隨機數生成函式 此函式不是基於用線性同餘法 標準庫中的rand 基於此方法 而是以乙個knuth提出的相減方法為基礎,速度比標準庫中的rand 要快,但不標準。staticlongg next 1 設定seed為任意負數值作為種子。voidrand...

mysql表怎麼做 mysql怎麼建立乙個表

1.登陸成功後,首先進入某乙個資料庫 不是指資料庫伺服器 use t1 t1是資料庫名 如圖所示 2.在此資料庫中建立資料庫表 2.1 先建立表結構 可以理解為表的列名,也就是欄位名 在實際生產過程中,表結構是需要經過精心設計的。通用的語法格式為 1 create table table name ...