|
여러가지 필드를 바꾸어서 시험을 해봤는데
필드의 값이 중복되는것들만 넣으면 괜찮은데 중복이 되지 않는 것. (예를 들면 시간등)을 추가하면
테이블의 값이 모두 출력이 됩니다.
시간등 중복되지 않는 필드가 필요한데 좋은 밥법이 없을까요?
unitas 님이 쓰신 글 :
: 답변 감사드립니다.
: 말씀하신대로 IBExpert 에서 실행해 보니 되는데요.
: 제가 질문의 편의상 고객번호와 고객명을 예로 든 것이거든요.
: 실제로 가져올 필드가 7가지 정도 되는데요.
:
: select CustID, CustName, SysID, dtTime, max(dtDate) as dtDate from table1
: where dtDate < '2008-01-16' group by CustID, CustName, SysID, dtTime;
:
: 이런식으로 필드가 4가지 이상되면 Table에 있는 모든 data가 표시되거든요.
: (CustID, CustName, SysID 이런식으로 3개 까지는 잘 표시됩니다.)
:
: SysID는 CustName(고객명)와 같은 고객에 대한 일반적인 정보입니다.
: dtTime은 시간 입니다.
:
: 필드의 갯수도 영향이 있나요?
:
:
:
: 슬.강슬기 님이 쓰신 글 :
: : 제가 Firebird는 아니지만...
: :
: : 아래의 구문은 AnsiSql로만 이루어진것이니.. 가능할겁니다.
: :
: : create table t1 (고객번호 int , 고객명 varchar(255),판매일자 datetime);
: : go
: : insert into t1 values(1,'홍길동','2008-01-10');
: : insert into t1 values(2,'박길동','2008-01-11');
: : insert into t1 values(1,'홍길동','2008-01-12');
: : insert into t1 values(2,'박길동','2008-01-13');
: : insert into t1 values(1,'홍길동','2008-01-14');
: : go
: :
: : select
: : 고객번호,
: : 고객명 ,
: : max(판매일자) as 판매일자
: : from
: : t1
: : group by
: : 고객번호, 고객명
: :
: : 고객번호 고객명 판매일자
: : -------- ------ -----------------------
: : 2 박길동 2008-01-13 00:00:00.000
: : 1 홍길동 2008-01-14 00:00:00.000
: :
: : (2 row(s) affected)
: :
: : MS-Sql입니다.
: :
: :
|