3
一般的なコミュニティWebサイトソフトウェアのファイルダウンロードを記録するテーブルにクエリを実行しています。下のSQLは、各ユーザーがダウンロードした最初のファイルを示しています。SQL - クエリから生成された列の一意の値をカウントします。
dfid dtime file_name MIN(dmid)
3 1308147507 abc 108
455 1308149115 def 109
788 1308156732 ghi 113
7 1308156830 xyz 112
455 1308158073 def 114
私はそれぞれのfile_name値が表示された回数を示すために、file_nameにそれぞれ固有のインスタンスをカウントすることができます:
SELECT
dfid, dtime, file_name, MIN(dmid)
FROM
downloads_downloads
JOIN downloads_files
ON downloads_downloads.dfid = downloads_files.file_id
GROUP BY
dmid
ORDER BY
dtime,dfid
このクエリからのデータは以下のように数千行が持っていますか?正確なレイアウトについては関係ありません。可能であれば、テーブルを作成せずにデータを挿入することなく、これを実行したいと思います。たとえば、上記のデータでは、file_nameの "def"が2回表示されるため、2回カウントされます。