Использовать результаты одного SQL-запроса в другом операторе where (подзапрос?)

Я вижу много похожих вопросов, но они либо настолько сложны, что я не могу их понять, либо, похоже, они не задают одно и то же.

Все просто: у меня есть две колонки: пользователи (dmid) и загрузки (dfid).

Выберите всех пользователей, которые скачали определенный файл:

SELECT DISTINCT dmid FROM downloads_downloads where dfid = "7024"

Используя пользователей выше, найдите все файлы, которые они все скачали:

SELECT dfid from downloads_downloads WHERE dmid = {user ids from #1 above}

Подсчитайте и упорядочите результаты dfid, чтобы мы могли видеть, сколько загрузок получил каждый файл:

dfid    dl_count_field
----    --------------
18       103
3        77
903      66

Моя попытка ответить.

Это кажется близким, но MySql отключается и не отвечает даже через 30 секунд - я перезагружаю Apache в конце концов. И я сейчас не знаю, как структурировать счет и порядок, не получая синтаксических ошибок из-за сложного утверждения - и это может даже не быть правильным утверждением.

SELECT dfid from downloads_downloads WHERE dmid IN (
    SELECT DISTINCT dmid FROM `downloads_downloads` where dfid = "7024")