テーブルがあります。ReadingListは、いくつかの列で構成されています。簡略化のため、それらを呼び出すことができます:mySQL - 異なるユーザーの同じ値を持つインスタンスの数を数えます。
- が
reading_id
がちょうどAIキーです
link_id_fk
は私が何をしようとしている (各user_id_fk
用)を複数回存在することができ、ほとんどのユーザーによって保存されているトップ10link_id_fk
値を、見つけることです。ここで
SELECT
*,
(SELECT COUNT(*)
FROM ReadingList
WHERE link_id_fk = ReadingList.link_id_fk) AS total_saves
FROM
ReadingList
WHERE
user_id_fk IN ('test123', 'test2') AND
link_id_fk > 0 AND deleted = 0;
望ましい出力例は次のようになります。
link_id_fk total_saves
12 3
34 2
56 1
78 1
誰かが正しい方向に向いていますか?
ありがとうございます!
@Strawberry - DDL? –
好きな場合は、この簡単な2ステップのアクション・コースに従ってください。1.まだ実行していない場合は、問題をより簡単に複製できるように、適切なCREATEおよびINSERTステートメント(および/またはsqlfiddle)を提供してください。 2.まだ実行していない場合は、手順1で提供された情報に対応する望ましい結果セットを提供します。明らかに、このコンテキストでは、問題を「トップ5」に単純化すると役立ちます。 – Strawberry