Q&A

  • Query합계산출
쿼리하여 읽어온 데이터중 한필드에 대하여 중복된 데이터의
[레코드카운트 수]와 [합계]를 구하고 자료가중복된 자료면첫번재 레코드만 남기는 구현입니다.

초보에게 힘을^^  예제라도...
답글 주시는 모든분에게 감사드림니다.

4  COMMENTS
  • Profile
    권태훈 2005.04.07 21:47
    select distinct a, count(a), sum(a) from table
    where...
    group by a
    하면 될듯..

  • Profile
    델초보 2005.04.07 22:51
    오~ 감사합니다.

    염치 없지만 하나더 질문합니다.
    카운트 된 필드를 Db그리드에 어떻게 전달하죠?
    그리고 필드가 문자형으로 되어있는데 어떻게 형변환을 하는지
    쿼리에서 형변환을 할 수 있는지?

  • Profile
    권태훈 2005.04.08 18:38
    문자면 sum()은 안 먹고, count만 먹겠네요.

    select field1 as a, count(field1) as b from table..

    이렇게 하면 a,b라는 필드로 field1, count()를 받게 됩니다.

    저 말고 대답해주신 분 말씀처럼 책을 한권 보시는게 좋습니다.

    sql은 stand query language 라고 흰색 커버에 손바닥만한 책 있습니다.

    제가 공부할때는 사천원이였는데 지금은 두배정도 할겁니다.

    페이지도 많지 않고, 요점만 확실하게 나옵니다.

    델파이 DB 어쩌구나 오라클 마스터링 어쩌구 하는 책처럼 DB의 특정 툴이나 특정 DB로

    제한한 책들은 개발시 레퍼런스 문서가 있으니 그걸 참고 하면 되고,

    공부할때는 완전 Standard한 문법을 배우는게 좋습니다.

    rdbms 처음 접할때는 sql문법만 공부하고 실제 상업적 문제에 직면했을때

    group by, having by등을 공부하면 됩니다.

    DB는 그루핑과 where절을 잘 쓰는게 고수되는 길 입니다.

    그루핑은 rdb를 쓰는 원칙과 이유일테고

    where절을 잘 써야 하는건 속도와 관계가 많습니다. (서브쿼리도 where절 안에 있다고 봅시다.)

    프리 컴파일드 sql같은것은 기초가 튼튼하면 그냥 알아서 됩니다.

  • Profile
    Crazy™ 2005.04.07 23:05
    책을 전혀?? 안보신듯 보이네요..
    남이 알려주면 그 하나만 알지만 자기가 책을 찾으면 그에 관련된걸 많이 배울수 있답니다..

    1. Query 와 Datasource를 연결하고 DBGrid와 Datasource를 연결하세요.

    2. 형변환은 DB마다 틀립니다.
    oracledms TO_NUMBER(필드명), TO_CHAR(필드명)
    MSSQL 은 CONVERT(타입, 필드명) 또는 CAST(필드명 AS 타입)
                     CONVERT(INT, AAA) 또는 CAST(AAA AS INT)
    즐프요..