Q&A

  • 아차 파라독스입니다. sql문장으로 답해주시면 감사하겠습니다.
A 테이블 입니다.
A  B   C  D   E   F    H
1  2   A  가  4   9    3
1  2   A  가  4   8
1  2   A  가  4   7
1  2   A  가  4   6    3
1  2   A  나  5  14
1  2   A  나  5  13
1  2   A  다  4   6    3
1  2   A  다  5  14
1  2   A  다  5  13        

저는 H필드가 3인것들 찾아서.. Group by 나타낼려고 하는데..


결과가 이렇게 나와야 하는데

결과 ************
A  B  C   D   건수
1  2  A  가     2
1  2  A  나     0
1  2  A  다     1

제가 한 SQL은

Select A,B,C,D,Count(*) From A Where H='3' Group by A,B,C,D
이렇게  하였더니.. 결과가 아래처럼 나오거든요..
A  B  C  D   건수
1  2  A  가    2
1  2  A  다    1

결과에서 처럼 3개의 레코드가 나와야 하는데.. 저는 2개만 나옵니다.
부탁드립니다.

파라독스에서 제가 원하는 결과가 나오게 할려면 어떻게 해야하나요. 알려주세요

제발

2  COMMENTS
  • Profile
    KDDG_ZZOM 2003.06.21 00:21
    파라독스db에서 넘많은걸 요구하시네요...^^
    제가 알기로는 님이 원하시는 쿼리문은 완빵에 나오기는 힘들것같네요...

    SELECT A,B,C,D,COUNT(*)
      FROM TEST
    WHERE H = 3
    GROUP BY A,B,C,D
    UNION
    SELECT A,B,C,D,0
      FROM TEST
    GROUP BY A,B,C,D
    ORDER BY A,B,C,D

    이런식으로 하시고 루프돌리면서 다시 취합하시면 원하시는 결과가 나올것같은데...

    즐프하세요...

  • Profile
    major 2003.06.21 00:06

    걍 Union 하면 될것 같은데여...

    그러니까 SQL로 보여 주면...

    Select A,B,C,D,Count(*) From A Where H='3' Group by A,B,C,D
    union
    Select A,B,C,D,Count(*) From A Where H<>'3' Group by A,B,C,D

    이렇게 하면 될 것 같네여...
    어차피 파라독스만 아니면 CASE 나 DECODE를 쓰면 되는 데.. 이게
    파라독스다 보니 이런식으로 사용을 해야 할 것 같네여...

    일단 쿼리는 이렇게 구성을 하지만 아마 좀 더 추가해야 부분이 있을 것 같네여
    ...

    그럼 즐프하세염...