問題タブ [find-in-set]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - MySql で FIND_IN_SET を使用したクエリの速度
製品のカタログからのクエリにいくつか問題があります。クエリは次のとおりです。
最初のクエリは平均 4.5 秒かかり、その後は高速になることに気付きました。テーブル「cms_catalogo」のデータベースには、「cc_famiglia」、「cc_categoria」、および「cc_sottocat」という列があり、内部 ID がカンマで区切られているため、FIND_IN_SET を使用します (ばかげていることはわかっています)。
例:
テーブル cms_catalogo
列 cc_famiglia : 1,2,3,4,5
テーブル cms_catalogo_famiglia
列 ccf_id : 3
そのようにFIND_IN_SETを使用すると、クエリの速度が低下する可能性がありますか?
ID をコンマで区切る代わりに、ID を持つテーブルをインデックスとして持つと、より高速になりますか?
ただし、クエリの最初の実行が非常に遅く、その後高速化する理由を説明することはできません
mysql - MySQL テキスト フィールドに X より大きい数値が含まれる行を選択します
MISCDATA
コンマとセミコロンで区切られた複数の数値と文字列値を含むデータベースにテキスト列 ( ) があります。MISCDATA
50 より大きい数値を含む行のみを選択するクエリを作成する方法はありますか (例)?
FIND_IN_SET() の使用を考えましたが、正しいコンテキストに配置できません。
私が自分自身を正しく説明したかどうかはわかりませんが、とにかくすべての助けが高く評価されます. ありがとう。
編集:
フィールドからのデータの例:
上記の例は、50 より大きい 2 つの数値 (MI と GJ) が含まれているため、SELECT によってリストされる必要があります。
mysql - MYSQL - GROUP_CONCAT と FIND_IN_SET は値/順序が混在していますか?
次の問題があります。ユーザーが行ったすべての投票を選択して、1 つの列にまとめようとしています。私はGROUP_CONCAT
これに使用しますが、どういうわけか値の順序が混在しています。
これは SQL コードです。
GROUP BY user_login.id ORDER BY user_login.class
投票の値の例は次のとおりです。
オプションは次のようなものです:
質問は次のようなものです:
イベントは次のようなものです:
指定されたコードの出力は次のとおりです。
プロジェクト D、プロジェクト C、プロジェクト B、バイのように出力されるように、元の順序を維持するにはどうすればよいですか?
mysql - 並べ替え条件のカンマ区切り値を含む FIND_IN_SET
以下のクエリを使用してデータをフェッチするために使用find_in_set
していますが、正しく動作します。
ここで、このクエリSELECT column1 FROM B WHERE id = 21
は次のような結果を返しますが、使用する必要が'175587,282329'
ある'175587,282329'
最も高い値がここに来ることを望み282329
ます。ありがとう
php - FIND_IN_SET が結果を取得しない (PHP)
このメソッドが結果を返さないことに問題があります。配列に一致する「テーブル」内の ID があります。指を置くことができないことを除けば、何かが気に入らないと思います。
mysql - リレーションシップを使用した 2 番目のテーブルの MySQL SELECT DISTINCT フィールド
tally_sheets
次の説明のようないくつかの集計シート情報を含むテーブルと、カンマで区切られた集計シートの ID のリストを含むフィールドを持つ以下で説明するテーブルがあるとしますpersons
。tally_sheets
すべての集計シートには、国と都市の組み合わせからの人々のみが含まれています。
テーブルのすべてのフィールドtally_sheets
とフィールドcountry
を含むすべての集計シートのリストを取得する方法は?city
persons
ランニング
はすべての国/都市の組み合わせを提供しますが、他のすべてのフィールドはNULL
です。
実行SELECT ts.id, p.country, p.city FROM persons p LEFT JOIN tally_sheets ts ON ts.id IN (p.tally_sheets) GROUP BY p.city
すると、フィールドも返されNULL
ます。
私が間違っているのは何ですか?どうもありがとう!
mysql - 関連レコードの表示 vb.net mysql
奇妙な検索基準があります。まずはっきりさせて、
私はこのようなテーブルを持っています
1) ここでは、"name_1" という人物が "5,6,7" のすべてのアカウントの所有者です。
私が欲しいのは、「acct_no」1を検索すると、他の接続されたアカウントのすべての詳細もグラインドなどに表示されるはずです。
ありがとう
--EDIT-- (1) 私はこの質問を見つけましたが、私はこれで私の問題を解決できません SQL: 共通 ID に関連するすべてのレコードを表示します
(2) データベースが一部のフィールドを UTF 形式で保存することを忘れていました (一部のローカル言語!)
mysql - Mysql の文字列の一部の FIND_IN_SET
データベース内のテーブルに対してクエリを実行する必要があります。今までは"twitter,bycicle,car" のFIND_IN_SET
ような文字列があったので使っていました。
次に、次の方法で検索できますFIND_IN_SET("twitter", nameOfColumn)
しかし今は、各「セット」の一部だけを検索する必要があります。たとえば、「twitter>10,bycicle,car」です。
自転車や車では問題なく動作しますが、Twitter を検索する必要がある場合は見つかりません。これを行う正しい方法は何ですか?
mysql - MySQL の複雑な ORDER BY の問題
要件の変更により、数か月前に作成したインターフェイスを再検討しました。より多くの機能、より多くのデータ。ここでデータの複雑な順序付け要件についてサポートを受けました。しかし、要件は変更されました。より正確には、拡張されました。私は数時間いじくり回してきましたが、成功していません。SOがもう一度私をほぐすのを手伝ってくれることを願っています.
データベースに表示される単純化されたサンプル データと、それを注文する方法を次に示します。
私は現在、次のORDER BY
ようなものを使用しています:
ただし、繰り返しは考慮されていません。そのちょっとしたロジックをどこに当てはめることができるかわかりません。誰か助けてもらえますか?
どうもありがとう!