다른 값이 선택 카테고리 :SQL 항목이 나는 종류의 테이블이
CategoryID Description
-------------------------
1 Red category
2 Green category
3 Blue category
그리고 아이템 테이블 :
ItemID CategoryID Status
------------------------------
1 1 "New"
2 1 "New"
3 1 "New"
4 2 "Editing"
5 2 "Editing"
6 2 "Editing"
7 3 "Published"
8 3 "Published"
9 3 "Published"
이 나는 새로운 코드를 포팅하고 레거시 응용 프로그램에서 온다 베이스. Item 테이블의 Status 열이 실제로 Category 테이블에 있어야한다고 생각합니다. 같은 카테고리에 속하는 다른 아이템과 다른 상태를 가진 아이템이 없다는 것을 어떻게 확인할 수 있습니까?
는 내가 같은 카테고리 ID를 가지고있는 항목을 집계 할 알고, 그래서 시도 : 이것은 나에게 별개의 카테고리를 제공
select categoryid
from item
group by categoryid
. 이제 두 개의 별개의 상태를 가진 것들을 선택하고 싶습니다.
select categoryid, count(status) > 1
from item
group by categoryid
having count(status) > 1
그러나 이것은 각 카테고리의 항목 수를 제공합니다. 나는 SQL에 끔찍하다.
는 있습니다 .. 상품 ID를 생략하고 상태를 변화 모든 categoryids를 얻을 수 있습니다. –
@samyi 나는 그것이 옳다고 생각하지 않는다. 위의 마지막 문장을 참조하십시오. –