다운로드 할 수있는 모든 항목에 대한 레코드를 포함하는 테이블 하나와 다운로드 날짜와 해당 항목의 ID 및 사용자를 포함하는 각 다운로드 레코드가 포함 된 테이블이 있습니다. 그것을 다운로드했다.MySQL의 하위 쿼리 결과로 정렬
데이터베이스에서 항목 목록을 가져올 때 항목이 다운로드 된 횟수를 조회하고 다른 항목 데이터와 함께이 항목을 포함하도록 쿼리를 원합니다.
SELECT t1.*,
(SELECT COUNT(*)
FROM tl_downloads
WHERE item_id = t1.id
AND download_date > ?)
AS downloads_count
FROM tl_items AS t1
ORDER BY downloads_count DESC
위의 쿼리가 나는 정확한 수를 포함 'downloads_count'라는 결과에 여분의 열을 얻을 의미에서 잘 작동하지만이가 나에게 주문을 못하게 : 여기
내 SQL입니다 값.하위 쿼리에서 반환 된 값으로 내 결과를 정렬하려면 무엇을해야합니까?
추가 정보가 필요하면 알려주세요.
편집 - 샘플 데이터
tl_items tl_downloads
id name id item_id download_date
1 Item 1 1 1 1385964000
2 Item 2 2 1 1385964000
3 Item 3 3 3 1385964000
나는 것이 예상 결과 : 0 다운로드를 기대
Item 1 - Downloads 2
Item 3 - Downloads 1
Item 2 - Downloads 0
감사
귀하의 예를 실제로 잘 작동하는 것 같다 : [SQL 바이올린] (http://sqlfiddle.com/#!2/3107f/2/0). 하지만 어쨌든 더 나은 솔루션이 될 것입니다. – hsan