장태진 님이 쓰신 글 :
: 안녕하세요?
: 파이어버드 2.1을 사용하고 있습니다.
:
: tid color value1 value2 의 필드가 있고
: 1 2 3 5
: 3 1 1 1
: 2 1 1 2
: 2 1 1 1
: 1 4 2 3
: 3 1 1 2
:
: 위와 같은 되어 있을 때
:
: 아래와 같이 동일한 tid중에 value2의 값이 제일 큰 하나 씩만 취하여 리스트를 가져오고 싶습니다.
:
: tid color value1 value2
: 1 2 3 5
: 2 1 1 2
: 3 1 1 2
:
: 이를 위하여 예전에 mysql에서는
:
: select tid, color, value1, max(value2) from tbl group by tid
:
: 와 같은 식으로 구현했었는데
: firebird에서는 그룹으로 지정할 필드와 그룹함수를 제외한 필드를 사용하면 에러가 발생하는군요.
:
: 제가 원하는 리스트를 얻기 위해서 어떤 식으로 select 문을 작성해야 하는지 고수님들의 고견 부탁드립니다.
select tid,max(color) color,max(value1) value1, max(value2) value2 from tbl
group by tid
(color,value1이 별 의미 없다면..쉽게 가세요..ㅎㅎ)
|