2010-12-14 5 views
0

이것은, 감동적인 장면에 태그 aplied 수 있습니다 ...얼마나 많은 시간 databes에 그것의 가치를 아는가? 모든 값에 대해?

내 질문의 예를 들어 얻기 위해 테이블에 atribute에 대한 상위 20 반복 .. 내 말은

, 난 내가 요청할 수 있습니다 알고 mysql_num_rows를 사용하여 선택한 속성에 대해,하지만 어떻게 그 모든 것을 알 수 있습니까?

예를 들어

,

가장 인기있는 색상 : 레드 -100000 파란색 -5000 흰색 -200 등등 ...

사람이 .. 나에게 감사 단서를 얻을 수 있다면!

답변

1
SELECT `name`, count(*) as `count` FROM `colors` 
GROUP BY `name` 
ORDER BY `count` DESC 
1

이 계산은 응용 프로그램이 아니라 데이터베이스에서 수행하려고합니다. 일반적으로 다음과 같은 형식의 쿼리는 괜찮을해야 값만 카운트 데이터가 응용 프로그램 데이터베이스에서 전송됩니다로

SELECT color_id, COUNT(product_id) AS number 
FROM products 
GROUP BY color_id 
ORDER BY number DESC 
LIMIT 20 

그것은, 빨리이 방법이 될 것입니다. 또한 인덱스가 올바르게 설정된 경우 (예 : color_id) 허벅지가 더 매끄럽게됩니다.