데이터베이스를 쿼리하고 단일 열에있는 각 ID의 발생 횟수를 확인하고 싶습니다. 이 쿼리에 관련된하나의 열에 여러 개의 값이 있습니다.
두 테이블은 다음과 같습니다 카테고리 :이 테이블의 범주에 뉴스 항목을 지정하는 데 사용됩니다, 각 뉴스 항목 수 :이 테이블 제목
id | title
----------
1 | project
2 | tech
3 | other
category_news 모든 범주의 목록이 있습니다 여러 범주
에있을id | category_id | news_id
--------------------------
1 | 1 | 2
2 | 1 | 5
3 | 1 | 3
4 | 2 | 4
5 | 3 | 2
6 | 3 | 1
나는 결과 좀하고 싶습니다
(나던, 난 그냥 반환 된 결과의 예를 들어 아래의 배열을 사용하여 쿼리의 결과를 정렬 할 수 있습니다 배열을해야) :
array(
'project' => 3
'tech' => 1
'other' => 2
);
여기서 키는 카테고리 제목이고 값은 각 카테고리의 뉴스 항목의 총 개수입니다.
select count(cn.category_id), c.title from category_news cn join categories c on c.id = cn.category_id where category_id = 1
하지만 내 문제는 내가 모든 수를 얻기 위해 하나 개의 쿼리로 그것을 할 수있다 : 나는 각 범주에 대한 쿼리와 함께 할 수 있다는 것을 알고? 100 가지 범주가 100 가지 질문을하는 것처럼 나는 그것을 하나의 방식으로하고 싶습니다.
SELECT c.title, count(cn.category_id)
FROM categories c
LEFT JOIN categories_news cn
ON c.id = cn.category_id
GROUP BY c.title
롤, 나는 이제 긴 질문을 작성하기위한 약간 바보에게 너무 간단 느낌 :) 감사. – Luke
아무런 문제가없는 친구, 바보 같은 느낌이 들지 않습니다 :-) – acm