序文 これは私が最近見つけた新しい機能です。 プロジェクトでの私の使用シナリオは次のとおりです。 アプリケーション タイプ テーブルには、parentId フィールドと parentIds フィールドが含まれています。前者は親 ID で、後者は複数レベルの親 ID です。どちらもデータベース内では varchar 型です。parentIds は複数の親 ID で構成され、"" で区切られています。 チームリーダーからこの機能が使えると言われたので、実際に使ってみて勉強してみました。 文法
意味
strlist: 英語のカンマ「,」で連結された文字列。例:「a,b,c,d」。この文字列は、カンマで連結された SET 型の値に似ています。 例: SELECT FIND_IN_SET('b','a,b,c,d'); //戻り値は2で、これは2番目の値です 例 記事テーブルにはタイプフィールドがあり、1 見出し、2 おすすめ、3 ホットスポット、4 画像とテキストなどの記事タイプが格納されます。 ここで find_in_set が役に立ちます。引用内容は以下のとおりです。 FIND_IN_SET('4',type) で記事から * を選択 find_in_set() と in の違い: 2つの違いを示すテストテーブルを作成する テーブル `tb_test` を作成します ( `id` int(8) NOT NULL auto_increment, `name` varchar(255) NOT NULL, `list` varchar(255) NOT NULL, 主キー (`id`) ); `tb_test` に VALUES (1, 'name', 'daodao,xiaohu,xiaoqin') を挿入します。 `tb_test` に値 (2、'name2'、'xiaohu、daodao、xiaoqin') を挿入します。 `tb_test` に値 (3、'name3'、'xiaoqin、daodao、xiaohu') を挿入します。 当初、MySQL は次のようなクエリを実行できると考えていました。 tb_test から id、name、list を選択 WHERE 'daodao' IN(list); -- (I) 実際、これは機能しません。クエリは、リスト フィールドの値が 'daodao' と等しい (IN の前の文字列と完全に一致する) 場合にのみ有効です。それ以外の場合は、'daodao' が実際にリストにあっても結果は取得されません。 これを見てみましょう: tb_test から id、name、list を選択 WHERE 'daodao' IN ('libk', 'zyfon', 'daodao'); -- (II) それはいいです。 これら2つの違いは何ですか?なぜ最初の方法では正しい結果が得られないのに、2 番目の方法では正しい結果が得られるのでしょうか。その理由は、(1)の(list)リストは変数であるのに対し、(2)の('libk'、'zyfon'、'daodao')は定数だからです。 したがって、(1)を正しく動作させたい場合には、 find_in_set(): SELECT id,name,list from tb_test WHERE FIND_IN_SET('daodao',list); -- (I) の改良版 要約する MySQL の find_in_set 関数の基本的な使い方についてはこれで終わりです。MySQL の find_in_set 関数の使い方についてさらに詳しく知りたい方は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Centos7 でスーパーバイザ デーモンをインストールして設定する方法
>>: Vue.jsはElement-uiを使用してナビゲーションメニューを実装します
目次1. 使い方が簡単2. DISTINCTを使用して重複を削除する3. COUNT()の詳細な紹介...
目次外部キーテーブルの関係を決定する方法テーブル関係を作成する方法1対多の関係 - 従業員テーブルと...
証明書チェーンを生成するスクリプトを使用して、ルート証明書、中間証明書、および 3 つのクライアント...
MySQL はオープンソースの小規模リレーショナル データベース管理システムです。現在、MySQL...
Apollo オープンソース アドレス: https://github.com/ctripcorp/...
CentosでのMySQLのインストールについては、以前の記事を参照してください。 Centos7....
luaをインストールする http://luajit.org/download/LuaJIT-2.0...
導入react-i18next は、 i18nextをベースにした強力な国際化フレームワークです。 ...
JSONデータはHTMLページ上に表示されフォーマットされます1. 表示効果図説明:すべてのキー値は...
div を使用してマスクを作成したり、ポップアップ ウィンドウをシミュレートしたりします。ただし、I...
目次トリガーについてトリガーの使用トリガーを作成するトリガーを表示トリガーの削除使用上の注意新旧の違...
最近、 Three.jsでReactを使用して、720 度のパノラマ写真を閲覧できるプロジェクトを構...
目次1. MySQLトリガーの作成: 1. MySQLトリガー作成構文: 2. MySQL作成構文の...
1. はじめにこの記事では、Docker を使用して Redis を探索する方法を説明します。 Do...
目次繰り返しレンダリングループを避ける副作用の除去についてReact16.8 の新しい useEff...