指定フィールドによるMySQLカスタムリストのソートの実装

指定フィールドによるMySQLカスタムリストのソートの実装

問題の説明

ご存知のとおり、MySQL でフィールドを昇順に並べ替える SQL は次のとおりです (id を例にとると、以下も同様です)。

`MyTable` から * を選択
`id` が (1, 7, 3, 5) の場合
`id` による順序

降順の SQL は次のとおりです。

`MyTable` から * を選択
`id` が (1, 7, 3, 5) の場合
`id` による順序

上記の並べ替えではニーズを満たせない場合があります。 たとえば、ID を 5、3、7、1 の順に並べ替えたいのですが、どうすればよいでしょうか? これは、国内外の多くの企業が頻繁に遭遇する問題の 1 つでもあります。

以下に、テーブル内のフィールドを必要なリスト形式で並べ替えるソリューションを示します。

解決

「ORDER BY FIELD」を使用します。

文法

フィールドによる順序(`id`, 5, 3, 7, 1)

FIELD の後にスペースがないことに注意してください。

したがって、完全な SQL は次のようになります。

`MyTable` から * を選択
`id` が (1, 7, 3, 5) の場合
フィールドによる順序(`id`, 5, 3, 7, 1)

一般的な用途

`MyTable` から * を選択
WHERE `name` IN ('张三', '李四', '王五', '孙六')
ORDER BY FIELD(`name`, '李四', '孙六', '张三', '王五')

指定されたフィールドによる MySQL カスタム リストの並べ替えを実装する方法に関する上記の記事は、私が皆さんと共有したいことのすべてです。これが皆さんの参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • あるテーブルのデータの列を別のテーブルの列にコピーするMySQLメソッド
  • MySQL FAQ シリーズ: 一時テーブルを使用する場合
  • SqlクエリMySqlデータベーステーブル名と説明テーブルフィールド(列)情報
  • Java+MySQLの再帰を使用してツリー型のJSONリストを連結する方法の例
  • Mysql テーブル、列、データベースの追加、削除、変更、クエリの問題の概要
  • Python モジュール pymysql の結果をクエリした後にフィールド リストを取得する方法
  • MySQL テーブルと列のコメントの概要

<<:  Ubuntu 16.4 で完全に分散された Hadoop 環境を構築するための実践的なチュートリアル

>>:  vite を使用して vue3 アプリケーションを構築する方法

推薦する

Vue における ref と $refs の紹介と使用例

序文JavaScript では、document.querySelector("#demo...

CentOS7でXShellとネットワーク設定を接続する方法

1. Linuxネットワーク構成ネットワークを構成する前に、まずローカル IPv4 アドレスやデフォ...

Linux でのマルチスレッドプログラミング例の分析

1 はじめにスレッド技術は 1960 年代にすでに提案されていましたが、マルチスレッドがオペレーティ...

Docker で FastDFS ファイル システムを構築する (マルチイメージ チュートリアル)

目次FastDFSについて1. 画像を検索する2. イメージをインストールする3.1. 必要なディレ...

MySQLデータベースのマスタースレーブ同期構成と読み取り書き込み分離

MySQL マスター スレーブ レプリケーションを使用する利点は次のとおりです。 1. 安定性を向上...

タブ切り替え機能を実装するJavaScriptカスタムプラグイン

この記事では、タブ切り替え機能を実装するためのJavaScriptの具体的なコードを参考までに共有し...

MySQLデータのグループ化の詳細な説明

グループを作成グループ化は、SELECT ステートメントの GROUP BY 句で設定されます。例:...

Apache Log4j2 が核レベルの脆弱性と迅速な修正を報告

Apache Log4j2 が核レベルの脆弱性を報告し、スタックリーダーの友人たちは大騒ぎになりまし...

MySql 5.6.35 winx64 インストール詳細チュートリアル

注: データベースのバージョンの問題により、プロジェクトの起動時にエラーは発生しませんでしたが、デー...

Dockerをクリーンアンインストールする方法の詳細な説明

まず、サーバー環境情報: アンインストールの理由:しばらくするとホストマシンのディスクが100%にな...

VueはCanvasを使用してランダムなサイズで重なり合わない円を生成します

目次キャンバス関連文書エフェクト画像表示ケースの完全なコード親コンポーネントコードサブコンポーネント...

Linuxコマンドunzipの詳しい説明

目次1. 解凍コマンド1.1 構文1.2 オプション2. 例1. 解凍コマンドunzip コマンドは...

CSS は Alibaba ベクター ライブラリを使用して、対応する位置に見栄えの良いアイコン効果をすばやく追加します (サンプル コード)

Alibaba ベクターアイコンライブラリにアクセスAlibaba ベクターアイコンライブラリ好き...

WeChatアプレット開発の章:落とし穴の記録

最近、会社初のミニプログラムの開発に参加しました。開発経験は基本的にWebViewをベースとしたハイ...