Q&A

  • 필드의 값이 같은 자료만 읽어오려면...(정말 급합니다.)
안녕하십니까.

다름이 아니라 프로그램을 짜다가 점수가 들어 있는 테이블에서 동점자의 정보만 가져오려고 하는데 SQL 함수중 여러번 SQL문을 쓰지 않고 한번의 SQL문으로 조회할수 있는

방법이 알고 싶습니다.

예를 들어 총점 필드가 90점, 80점 등으로 들어가 있는데 이것을 90점의 동점자는 몇명이고 그 점수를 받은 학생의 번호를 조회할수 있는 SQL문입니다.

매우 급합니다.알려주시면 은혜는 잊지 않겠습니다.



4  COMMENTS
  • Profile
    노광주 2000.01.15 17:20
    최종렬 wrote:

    > 안녕하십니까.

    > 다름이 아니라 프로그램을 짜다가 점수가 들어 있는 테이블에서 동점자의 정보만 가져오려고 하는데 SQL 함수중 여러번 SQL문을 쓰지 않고 한번의 SQL문으로 조회할수 있는

    > 방법이 알고 싶습니다.

    > 예를 들어 총점 필드가 90점, 80점 등으로 들어가 있는데 이것을 90점의 동점자는 몇명이고 그 점수를 받은 학생의 번호를 조회할수 있는 SQL문입니다.

    > 매우 급합니다.알려주시면 은혜는 잊지 않겠습니다.

    >



    tab1 column구성: 학번,점수 라고 할때,



    select cnt,점수,성명

    from tab1, (select count(*) as cnt from tab1

    where 점수 = 90)

    where 점수 = 90;



    이라고 쓰시면 됩니다. 결과는 90점 받은 학생이 5명이라면

    5 1111 홍길동

    5 1112 임꺽정

    5 1113 김대중

    .

    . 이런 식으로 나오겠죠... 만약 90이라는 조건을 안주고 전체에 대해



    점수대별 학생숫자와 번호를 알고 싶다면





    select tab1.점수,cnt,성명

    from tab1, (select 점수,count(*) as cnt from tab1

    group by 점수) tab2

    where tab1.점수 = tab2.점수;



    이라고 하시면



    80 3 홍길동

    80 3 나나나

    80 3 가가가

    90 5 김대중

    90 5 조용필

    90 5 김건모

    90 5 조성모

    90 5 유승준



    이런 식으로 조회가 되겠지요...

  • Profile
    김남훈 2000.01.15 01:20
    최종렬씨 안녕하십니까? 제가 보내는 답변이 맞는지는 모르겠지만 이렇게 해보면

    어떨런지......



    self query를 사용하는 것입니다.

    예를 들면

    'select * from table_name a, table_name b

    where a.chongjum = b.chongjum

    이것이 무엇이냐 즉 같은 테이블을 select 문에서 두번 선택한다음 엘리어스를 주는

    것입니다. 그러면 같은 테이블이라고 해도 엘리어스로 where 조건문을 주기 때문에

    서로 다른 테이블로 인식을 하게 되죠....

    그럼 도움이 됐으면 합니다.







    최종렬 wrote:

    > 안녕하십니까.

    > 다름이 아니라 프로그램을 짜다가 점수가 들어 있는 테이블에서 동점자의 정보만 가져오려고 하는데 SQL 함수중 여러번 SQL문을 쓰지 않고 한번의 SQL문으로 조회할수 있는

    > 방법이 알고 싶습니다.

    > 예를 들어 총점 필드가 90점, 80점 등으로 들어가 있는데 이것을 90점의 동점자는 몇명이고 그 점수를 받은 학생의 번호를 조회할수 있는 SQL문입니다.

    > 매우 급합니다.알려주시면 은혜는 잊지 않겠습니다.

    >

  • Profile
    김태균 2000.01.14 19:39
    다음같이 한번 해보세요...



    select count(*), 총점 from Table_name

    group by 총점



    이러면 나올거에요...



    최종렬 wrote:

    > 안녕하십니까.

    > 다름이 아니라 프로그램을 짜다가 점수가 들어 있는 테이블에서 동점자의 정보만 가져오려고 하는데 SQL 함수중 여러번 SQL문을 쓰지 않고 한번의 SQL문으로 조회할수 있는

    > 방법이 알고 싶습니다.

    > 예를 들어 총점 필드가 90점, 80점 등으로 들어가 있는데 이것을 90점의 동점자는 몇명이고 그 점수를 받은 학생의 번호를 조회할수 있는 SQL문입니다.

    > 매우 급합니다.알려주시면 은혜는 잊지 않겠습니다.

    >

  • Profile
    노광주 2000.01.14 02:29
    만약 Paradox라면 저는 포기합니다.