私は試しましたが、結果を得ることができないため、ここで助けを求めています。私はコンピュータ上のユーザーのためのログインのテーブルを持っています。私は、ユーザーがコンピュータにログインした回数を数え、最大ユーザーがコンピュータのプライマリユーザーと見なされるように最大値を取得したいと考えています。SQLは最大カウントからすべてのフィールドを返します
-1
A
答えて
0
select Comp, [User], count([User]) as MaxCnt
from TableHere
group by Comp, [User]
1
は、使用しているDBMS内容に応じて、あなたは、カンプ当たりのカウント数をランク付けするために窓関数ROW_NUMBER()を使用することができます。次に最高ランクを引いてください。
SELECT
Comp,
[User],
Cnt
FROM
(SELECT
Comp,
[User],
COUNT(1) AS Cnt,
ROW_NUMBER() OVER (PARTITION BY Comp ORDER BY Count(1) DESC) AS Rnk
FROM UserHist
GROUP BY Comp, [User]) BaseTable
WHERE Rnk = 1
1
RANK
をカウントして最大値を選択できます。これは、CTEを使用して、カウントとランクのデータを取得します。
WITH CTECOMP AS
(
SELECT COMP, [user], COUNT([USER]) [USERCOUNT],
RANK() OVER (PARTITION BY COMP ORDER BY COUNT([USER]) DESC) [MYRANK]
FROM @TableData
GROUP BY comp, [user]
)
SELECT *
FROM CTECOMP
WHERE MYRANK = 1
関連する問題
- 1. グループソートモデルで最大のカウントを返そうとしています
- 2. SQLクエリで最大カウント2
- 3. SQLクエリの最高カウント値を返す
- 4. SQL - 最高のカウントを返す行
- 5. SQL - すべての行の最新のコメントを返します。
- 6. SQLは最大の行の合計を返します
- 7. SQL:2つのカラムから2つの最大日付を返します
- 8. SQLの第3フィールドの最大値に対応する各名前と他のフィールドを返します
- 9. linq-to-sqlでカウントを返します
- 10. すべての単語の繰り返しをカウントします。
- 11. SQL Server:フィールド値の最初のインスタンスのみを返します
- 12. グループからの最大値を返す
- 13. すべてのレコードのフィールドを合計し、Linqを使って合計レコードの最大値を返す方法
- 14. P1 UNIONのない100ビューからのSQLカウント行すべて
- 15. NSDictionaryからすべてのキーをカウントするとEXC_BAD_ACCESSが返されます。
- 16. ノードの近隣から最大のノードを返します
- 17. SQL:最大値をとりますが、特定のIDのフィールドが見つからない場合は、すべての値を無視してください。
- 18. カウント最大数
- 19. Sqlite DBから最大値を返す
- 20. Sqlite:各グループの最大値をORDER BYで返しますが、すべての行を返します
- 21. 複数の行から返されるSQLの最大値
- 22. すべての最大値を選択するSQLクエリ
- 23. Wordpress APIはすべてのユーザーのフィールドを返しません。
- 24. テーブルの列からSQLのビューにすべての行を返します
- 25. 結合テーブルのsqlカウントはGROUP BYでエラーを返します
- 26. SQLカウントのクエリは常に1を返します
- 27. 最大値のインデックスを返します
- 28. SQL - Postgres - 最新の日付の最大値を返す
- 29. SQL SELECT複数のフィールドをカウントする
- 30. Linq to SQL - 2つのテーブルからカウントを返す
正確なカラムはどのテーブルにありますか?どのrdbmsを使用していますか?これまでに何を試しましたか? – istovatis
この種の質問に対する多くの回答については、[タグ:最大グループ別]を参照してください。また、これを読んでください:http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-images-of-code-on-so-when-asking-a-question/285557#285557なぜあなたのエディタのスクリーンショットを撮り、ローカルに保存し、それをSOにアップロードし、質問にリンクして、エディタのコンテンツをコピー&ペーストするのが簡単なのはなぜですか?使用しているDBMSを教えてください。 –
SQL 2012をバックエンドで使用し、実際にはMS Accessをクエリエンジンとして使用しています。以下を試してみましたが、上記のように取得しようとしている結果の代わりに1行しか返さない(uhはUserHistテーブルを表しています)。 uh.computer_id、uh.user_name(0h.user_name)=(SELECT Max(a.cnt)) FROM(SELECT uh.computer_id、Count(uh.user_name)AS cnt FROM uh GROUP BY uh.computer_id 、uh.user_name)AS a) ' – Tom