2010-01-15 2 views
6

예, 숙제 문제이지만 무고한 사람을 보호하기 위해 이름이 변경되었습니다. 의미, 나는 숙제 자체를 묻는 것이 아니라 오히려 그것의 작은 부분이므로 전체를 이해할 수 있습니다.관계 대수 - 'having'절을 표현하는 적절한 방법은 무엇입니까?

--The 쿼리가 두 번 이상 발생하는 자동차 가격을 나열합니다 :

는의는이 같은 SQL 쿼리가 있다고 가정하자.

select car_price from cars 
group by car_price 
having count (car_price) > 1; 

관계 대수 에이의 일반적인 형태는 Y는 (GL, 등)은 Y가 그리스 기호는 R 는 GL 그룹 속성의리스트이고, AL 그래서 집계

목록이다

Y (count(car_price)) cars 

그래서, 어떻게 "가진"절은 그 문에 기록됩니다 같은 관계 대수가 보일 것이다? 속기가 있나요? 그렇지 않은 경우 해당 관계에서 선택하면됩니까? 아마도이게 뭔가?

SELECT (count(car_price) > 1) [Y (count(car_price)) cars] 

나는 시간이에 인터넷을 검색하고 관계 대수 할 필요가 변환의 어떤 사례를 발견했다. 도와 주셔서 감사합니다!

+2

+1 ...이 질문에 대한 결정적인 답이 줄 거의 불가능하다 것으로 보인다. – hobodave

+1

흠, 제목에 "관계형 대수"가있는 것은 기본적으로 숙제라고 생각합니다. –

+0

관계형 대수에 대해서는 아무것도 알지 못합니다. 그러나 "having"은 집합의 집합에 적용 할 수 있다는 것을 제외하고는 "where"와 같습니다. 관계형 대수가 다른 이유가 있습니까? – BobMcGee

답변

3

자동차로 선택 (* 선택 자동차에서 가격> 1)에서 선택 카운트 (*);

관계형 폐쇄라고도합니다.

0

실제 질문에 대한보다 정확한 답변을 위해서는 "관계형 대수학 - 'having'절을 표현하는 적절한 방법은 무엇입니까? '라는 질문에 먼저 질문 자체가 제안하는 것처럼 보일 필요가 있습니다. 또는 "THE"관계 대수학과 같은 것이 존재한다고 가정하지만, 그 가정은 단순히 사실이 아닙니다!

대수는 연산자 집합이며 누구나 좋아하는 연산자 집합을 정의 할 수 있습니다. 누구든지 원하는 대수를 정의 할 수 있습니다. 그의 가장 최근의 간행물에서 Hugh Darwen은 RESTRICT가 대수학의 근본적인 연산자가 아니라는 것을 언급합니다.

특히 집계 및 요약에 관해서는 관계형 대수학에 이들을 통합하는 방법에 대한 합의가 거의 없습니다. 대수의 일부로 COUNT() (인수 값으로 관계를 가져 와서 정수를 반환)와 같은 연산자를 정의하면 대수의 닫는 속성에 문제가있을 수 있습니다. 이러한 연산자가 관계를 반환하지 않기 때문에 문제가 될 수 있습니다.

는 그래서 미안하지만, 그럼에도 불구하고 가장 적합한, 여기에 대답 숙제에 대한 정직에 대한

관련 문제