처음에는 newbee 질문에 사과드립니다. 저는 MySQL을 처음 접했습니다.ORDER BY 문제 GROUP BY 및 JOIN
등록 :
나는 간단한 사진 콘테스트 3 개 테이블이
ID
UserName
name
LastName
Email
Mobile
포토 갤러리 :
ID
ImageName
user_id
Status=1
photovote : 내가 계산해야
Photo_ID
Date
Time
Status
fo에 투표하다 각 사진을 타임 슬라이스에 표시하고 넥타이의 경우 마지막 투표를 먼저받은 사람을 확인해야합니다.
내가 함께했다 쿼리는 다음과 같습니다
SELECT v.Photo_ID AS "Photo ID",
g.ImageName AS "Photo URL",
r.UserName AS "Username",
r.name AS "Name",
r.LastName AS "Surname",
r.Email AS "E-Mail",
r.Mobile AS "Phone",
v.Date AS "Last Vote Date",
v.Time AS "Last Vote Time",
COUNT(Photo_ID) AS "Total Votes"
FROM photovote v
INNER JOIN photogallery g ON v.Photo_ID = g.ID
INNER JOIN registration r ON g.user_id = r.ID
WHERE v.Status =1
AND g.Status =1
AND v.Date >20130728
AND v.Date <20130805
GROUP BY 1
ORDER BY 10 DESC, 8 DESC, 9 DESC
는 그럼에도 불구하고 ORDER BY가 제대로 작동하지 않습니다. 어떤 힌트라도 높게 평가됩니다.
덕분에, 안드레아
"올바르게 작동하지 않는다"는 것은 무엇을 의미합니까? –
주문 별 주문은 숫자가 아닌 열 이름이어야합니까? –
@DavidMacCrimmon 디버깅 할 때 'order by'에서 위치 필드를 사용하는 것이 더 빠르지 만 생산을하기 전에 제거해야합니다. – vol7ron