MYSQL 文字関数を使用してデータをフィルタリングすることに関する質問

MYSQL 文字関数を使用してデータをフィルタリングすることに関する質問

問題の説明:

構造:

テストには2つのフィールドがあります。
これらは col1 と col2 で、どちらも文字フィールドです。
内容は で区切られた 3 つの数字で、それぞれが 1 対 1 で対応しています。

たとえば、col1の内容は26,59,6です。
col2 の内容は: 1502.5,1690,2276.77
一対一の対応は、26の値は1502.5、59は1690、6は2276.77に対応する。


検索条件:

59などのIDを選択し、2000などの数字を入力します。
次に、col1でid=59のレコードを検索し、次にcol2が2000未満、つまり1690<2000のレコードを検索します。

例:

次の 3 つのレコードがある場合、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 の 3 つのレコードが検索され、2 番目の検索条件が次のように決定されます (つまり、対応する ID 位置の数字が比較されます)。

1690<2000
3502.1>2000
1520.77<2000

ドロップテーブルテスト。 
テーブル test ( col1 varchar(100), col2 varchar(100)) を作成します。 
挿入テスト選択 
'26,59,6'、'1502.5,1690,2276.77' 結合すべて選択 
'59,33,6'、'3502.1,1020,2276.77' 結合すべて選択 
'22,8,59'、'1332.6,2900,1520.77'; 
列1、列2を選択 
(select *,find_in_set('59',col1) as rn from test) kから 
ここで、substring_index(concat(',',substring_index(col2,',',rn)),',',-1) 
 <'2000'; 

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

| 列1 | 列2 |

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

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

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

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

<<:  jsはユーザーのページ操作を記憶するためにクッキーを使用します

>>:  Dockerコンテナを外部IPとポートにバインドする方法

推薦する

Tomcat の文字化けしたコードとポート占有の解決方法について簡単に説明します

Tomcat サーバーは、無料でオープン ソースの Web アプリケーション サーバーです。軽量のア...

携帯電話番号の歩数記録を取得するWeChatアプレット

序文最近、小さなプログラムを開発しているときに、このような問題に遭遇しました。ユーザーが認証をクリッ...

Taobao ストアでズームインする効果は、スライドショーを使用する原理に似ています。

今日は、スライドを使用する原理に似た、Taobao のフロントエンドのマウス ズーム効果に慣れました...

Alibaba Cloud Server の詳細な展開 (グラフィック チュートリアル)

最近、Web 開発のフロントエンドとバックエンドの技術を学んだので、その後の管理を容易にするためにプ...

Nginx Rewrite の使用シナリオとコード例の詳細な説明

Nginx Rewriteの使用シナリオ1. URL アドレスジャンプ。たとえば、ユーザーが pm....

flexとは何か、flexレイアウト構文の詳細なチュートリアル

フレックスレイアウトFlex は Flexible Box の略で、「柔軟なレイアウト」を意味します...

HTML の 5 種類のスペースの意味

HTML には、幅の異なる 5 つのスペース エンティティが用意されています。非改行スペース ( )...

Ubuntu 上の Apache で SSL (https 証明書) を設定する正しい方法の詳細な説明

まず、Alibaba Cloud の公式チュートリアルをご覧ください。ファイルの説明: 1. 証明書...

CSSでカスタムフォント(font-face)を導入する方法の詳細な説明

なぜこれを使ったのか?それはポスターを作ることから始まりました。それは嵐の夜でした。 。 。さて、無...

MySQL ビューの一貫性を確保する方法の詳細な説明 (チェック オプション付き)

この記事では、例を使用して、MySQL ビューの一貫性を確保する方法 (チェック オプションを使用)...

SpringBoot アプリケーションの Docker デプロイメントの実装手順

目次序文DockerファイルDockerfile とは何ですか? Dockerfile 構文Spri...

CSS ハート型読み込みアニメーションのソースコードの実装

さっそく、コードをお見せしましょう。コードは非常にシンプルなので、勉強すれば理解できるようになります...

VMware Workstation と vSphere 間で仮想マシンを移行する (画像とテキスト)

1. Workstationで仮想マシンのハードウェアバージョンを変更するWorkstation ...

nginxとlvsのメリットとデメリット、そして適切な使用環境

まず最初に、ロード バランシングとは何かについて説明します。ロード バランシングとは、リクエストの内...

動的な色切り替えの実装コードをサポートするために、CSS で SVG 画像を参照します。

表示する svg 画像を追加すると、React はファイルが見つからないというメッセージを表示します...