2017-04-10 10 views
0

max値のすべての結び目を正常に返すクエリを返すのに問題が発生しました。最大値はインテリアクエリから得られます。私のSQLは以下の通りです:SQLite Handle Max()Ties

SELECT NAME, 
     Max(y.val) 
FROM (SELECT NAME, 
       Count(*) AS val 
     FROM numbers N 
     JOIN cards C 
      ON C.mid = N.mid 
     GROUP BY NAME) AS y 

現在のところ、単一の最大値を返していますが、結びつきがあればすべて返す必要があります。誰もがこれをsqliteを使用して私を助けることができるだろうか?

+0

は私たちに、DBスキーマ、サンプルデータと予想される出力を表示します。 \t [** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t [**スタート**] (http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)質問品質を改善し、より良い回答を得る方法を学ぶことができます。 –

答えて

2

ここでの考え方は、最大数を検索し、同じカウントですべての行と一致し、両方にそれをyを分離して再使用することです:

WITH y as (SELECT name, COUNT(*) as val 
      FROM Numbers N 
      JOIN Cards C on C.mid = N.mid 
      GROUP BY name) 
SELECT name, val 
FROM y 
WHERE (SELECT MAX(val) from y)=val; 
+0

作品!あなたより! – SJR59