안녕하세요. 우선 답은 아니고요. 정보가 좀 더 필요해서요.
그러니깐 단순히 카운터를 한 값을 스트링그리드에 표현하는 것인가요?
그렇다면 쉽게 나올 수도 있을것 같은데요.
숫자를 표현 한다면 나이를 묶어서 질의하심이...
Select No, Cod, 10 Nai, count(*) cnt from HoywonDB
where nai between ''11'' and ''20''
group by No, Cod
union all
Select No, Cod, 20 Nai, count(*) cnt from HoywonDB
where nai between ''21'' and ''30''
group by No, Cod
union all
Select No, Cod, 30 Nai, count(*) cnt from HoywonDB
where nai between ''31'' and ''40''
group by No, Cod
union all
Select No, Cod, 40 Nai, count(*) cnt from HoywonDB
where nai between ''41'' and ''50''
group by No, Cod
김광재님의 질문을 정확히 이해하지 못해서 더이상 써 내려가면
이상할것 같아서 이만 줄이겠습니다.
약간만 더 부연 설명을 해 주신다면 명확한 답을 드릴수도 있을텐데,
아님 다른 고수들이 명확한 답변을 기둘릴수 밖에요.
죄송합니다.
김광재 wrote:
> 각설하고 여쭙겠습니다. 도와주세요..
>
> 쿼리문을 처음레코드 부터 끝까지 읽어서 각각의 해당항목에 값을 누적시키려고 합니다..
> 회원정보를 가지고 있는 DB가 있습니다.(DB Record 갯수는 약 1000건정도입니다.)
>
> 이 DB에서 회원코드가 10~20이면 A에 누적 시키고(+1...)
> 회원코드가 20~30이면 B에 누적 시키고
> 회원코드가 30~40이면 C에 누적 시키고
> 회원코드가 40~50이면 D에 누적 시키고
>
> 1000명의 회원은 코드가 반드시 위의 하나에 속해 있습니다.
>
> 또한 각 회원들을 연령대별로 구분해서 각각의 기억장소에 저장을 합니다
>
> 이 DB에서 회원나이가 11~20이면 a에 누적 시키고(+1...)
> 회원나이가 21~30이면 b에 누적 시키고
> 회원나이가 31~40이면 c에 누적 시키고
> 회원나이가 41~50이면 c에 누적 시키고
> 회원나이가 51~ 이면 d에 누적 시키는
>
> 그래서 이 누적된 값들을 출력할땐 스트링그리드에
>
>
> 코드10(A) 코드20(B) 코드30(C) 코드40(D) 코드50(E) 계
> ------------------------------------------------------------------------
> 10대(a) 1 2 5 2 4 14
> 20대(b) 2 3 2 1 1 9
> 30대(c) 1 1 1 1 1 5
> 40대(d) 1 2 5 2 4 14
> 50대(e) 2 3 2 1 1 9
> ========================================================================
> 총계 7 11 15 7 11 51
>
>
> 정말 정보처리기사문제랑 유형이 비슷한 것 같은데여(DB쓰는것 빼면)..
> 한달째 이거 하나갖고 헤메고 있습니다.
> 제발 이런 소스 있음 좀 부탁드립니다.
> 쿼리를 카운트해서 카운트만큼 DB를 읽으면서 한번에 하나씩 누적을 시키려했는데..
> 자꾸 뻗어버립니다. 역시 말이 안되는 것 같구여..
> 제발 부탁드립니다.
>
>
>
> begin
> k := 0;
> while frmstatistic.QryStatistic.Eof do
> begin
> frmstatistic.QryStatistic.Close;
> frmstatistic.QryStatistic.SQL.Clear;
> frmstatistic.QryStatistic.SQL.Add('Select No,Cod,Nai from HoywonDB');
> begin
> try
> frmstatistic.QryStatistic.Open;
>
> except
> Application.MessageBox('조건에 맞지 않는 값을 불렀습니다.',' ☞ 통계자료보기 ',Mb_OK+MB_Iconinformation);
> end;
> end;
> end;
그러니깐, 도표위에 보이는것처럼
코드10(A) 코드20(B) 코드30(C) 코드40(D) 코드50(E)
이거는 어떻게 나누어져 있나요? 이건만 좀 더 설명해 주세요.
> 어떤 회원이 나이가 13세이고 코드가 35이라면
> Stringrid.cells[1,3]:= 1 이되겠습니다.
> 다음에서 같은 조건으로 17세 코드가 38이라면..
> Stringrid.cells[1,3] := 2 가 되겠구요..
여기서 보면 나이가 13세, 17세는 10대롤 묶었는데, 코드가 다른데 하나로 묶여있거든요. 그리고 DB는 무엇을 쓰시는지 좀...
김광재 wrote:
> 네.. 단순히 카운터를 한 값을 그리드에 표현하는 겁니다.
>
> 어떤 회원이 나이가 13세이고 코드가 35이라면
> Stringrid.cells[1,3]:= 1 이되겠습니다.
> 다음에서 같은 조건으로 17세 코드가 38이라면..
> Stringrid.cells[1,3] := 2 가 되겠구요..
> 이렇게 각 값을 누적시켜 나가는 겁니다.
> 회원조건에 따라서 말이죠 다시한번 님께 부탁드립니다.
> 좀 더 상세히 알려주신다면 정말 감사하겠습니다. 부탁드립니다.
>
>
> 정계훈 wrote:
> > 안녕하세요. 우선 답은 아니고요. 정보가 좀 더 필요해서요.
> >
> > 그러니깐 단순히 카운터를 한 값을 스트링그리드에 표현하는 것인가요?
> >
> > 그렇다면 쉽게 나올 수도 있을것 같은데요.
> >
> > 숫자를 표현 한다면 나이를 묶어서 질의하심이...
> >
> > Select No, Cod, 10 Nai, count(*) cnt from HoywonDB
> > where nai between ''11'' and ''20''
> > group by No, Cod
> > union all
> > Select No, Cod, 20 Nai, count(*) cnt from HoywonDB
> > where nai between ''21'' and ''30''
> > group by No, Cod
> > union all
> > Select No, Cod, 30 Nai, count(*) cnt from HoywonDB
> > where nai between ''31'' and ''40''
> > group by No, Cod
> > union all
> > Select No, Cod, 40 Nai, count(*) cnt from HoywonDB
> > where nai between ''41'' and ''50''
> > group by No, Cod
> >
> > 김광재님의 질문을 정확히 이해하지 못해서 더이상 써 내려가면
> > 이상할것 같아서 이만 줄이겠습니다.
> > 약간만 더 부연 설명을 해 주신다면 명확한 답을 드릴수도 있을텐데,
> > 아님 다른 고수들이 명확한 답변을 기둘릴수 밖에요.
> > 죄송합니다.
> >
> > 김광재 wrote:
> > > 각설하고 여쭙겠습니다. 도와주세요..
> > >
> > > 쿼리문을 처음레코드 부터 끝까지 읽어서 각각의 해당항목에 값을 누적시키려고 합니다..
> > > 회원정보를 가지고 있는 DB가 있습니다.(DB Record 갯수는 약 1000건정도입니다.)
> > >
> > > 이 DB에서 회원코드가 10~20이면 A에 누적 시키고(+1...)
> > > 회원코드가 20~30이면 B에 누적 시키고
> > > 회원코드가 30~40이면 C에 누적 시키고
> > > 회원코드가 40~50이면 D에 누적 시키고
> > >
> > > 1000명의 회원은 코드가 반드시 위의 하나에 속해 있습니다.
> > >
> > > 또한 각 회원들을 연령대별로 구분해서 각각의 기억장소에 저장을 합니다
> > >
> > > 이 DB에서 회원나이가 11~20이면 a에 누적 시키고(+1...)
> > > 회원나이가 21~30이면 b에 누적 시키고
> > > 회원나이가 31~40이면 c에 누적 시키고
> > > 회원나이가 41~50이면 c에 누적 시키고
> > > 회원나이가 51~ 이면 d에 누적 시키는
> > >
> > > 그래서 이 누적된 값들을 출력할땐 스트링그리드에
> > >
> > >
> > > 코드10(A) 코드20(B) 코드30(C) 코드40(D) 코드50(E) 계
> > > ------------------------------------------------------------------------
> > > 10대(a) 1 2 5 2 4 14
> > > 20대(b) 2 3 2 1 1 9
> > > 30대(c) 1 1 1 1 1 5
> > > 40대(d) 1 2 5 2 4 14
> > > 50대(e) 2 3 2 1 1 9
> > > ========================================================================
> > > 총계 7 11 15 7 11 51
> > >
> > >
> > > 정말 정보처리기사문제랑 유형이 비슷한 것 같은데여(DB쓰는것 빼면)..
> > > 한달째 이거 하나갖고 헤메고 있습니다.
> > > 제발 이런 소스 있음 좀 부탁드립니다.
> > > 쿼리를 카운트해서 카운트만큼 DB를 읽으면서 한번에 하나씩 누적을 시키려했는데..
> > > 자꾸 뻗어버립니다. 역시 말이 안되는 것 같구여..
> > > 제발 부탁드립니다.
> > >
> >