MySQL - Использование результатов из одного запроса для использования в другом запросе

Допустим, у меня есть это, что производит 50 000 строк:

SELECT photoID FROM photoSearch WHERE photoID BETWEEN 1 AND 50000;

Я собирался запустить этот запрос против тех, кто только что вернулся.

SELECT COUNT(people) AS totalPeople, people
FROM people
INNER JOIN photopeople ON photoPeople.peopleID = people.PeopleID
WHERE photoid IN ('ID's from results')
GROUP BY people
ORDER BY totalPeople DESC

Но я понимаю от других и ресурсов, что в пункте в разделе не будет хорошо работать, особенно так, как я мог бы иметь 100 000 плюс фото.

Это хорошая идея хранить фотографию из верхнего запроса в другой таблице (RECTIVESTBL) или в очень длинной строке? Если да, только для того, я использую соединение или подпроверку, чтобы запросить эти идентификаторы (в нижнем запросе), вместо этого? Или ... Есть ли другой способ, которым сделает работу, сохраняя в виду производительность?

Любая помощь по этому поводу будет получена с благодарностью.

5
задан TheCarver 16 September 2011 в 00:03
поделиться