2012-01-18 3 views
1

나는MySQL에서 행 계산?

(`id`, `category`, `content`, `post_time`) 

같은 것을 보았다 테이블이 그리고 post_time (예)> '1326600000'가 나는 데이터가이 같은 것을 표시 할 범주를 계산하고 싶다면 :

categorys['cat_1'] = 4 
categorys['cat_2'] = 2 
categorys['cat_3'] = 1 

이 작업을 수행하는 유일한 방법은 MySQL의 모든 행을 가져 오는 것입니다. 범주 목록을 만듭니다. 다음으로 count (id)를 cat_count로 사용하십시오. category = 'category_from_list'

더 좋은 방법이 있습니까?

답변

4

더 좋은 방법이 있습니까?

예 :

SELECT category, 
     COUNT(1) 
    FROM insert_table_name_here 
WHERE post_time > '1326600000' 
GROUP 
    BY category 
; 

가 (둘 다 categoryCOUNT(1),이 절 —은 GROUP BY를 추측하지만 어쨌든 그것을 포함해야한다를 선택하면 MySQL이 실제로 절 옵션 —하여 그룹을 만든다.)

+0

와우 감사합니다. 그렇게 간단하지만 정확히 내가 원했던 것. 죄송하지만 죄송합니다. SQL = ( – Undefined

+0

) @LeeJacobson : 기분이 좋지 않습니다. SQL은 거대한 짐승이며, 돈을 벌면 찾고있는 기능을 찾기가 정말 어려울 수 있습니다. 그게 뭔지는 이미 알고있어. – ruakh

0
SELECT `category`, 
     COUNT(`category`) as TotalCount 
FROM `tableName` 
WHERE post_time > '1326600000' 
GROUP BY category