Q&A

  • 특정필드의 data를 중복제거하고 가져오기
예를 들어 어떤 테이블의 필드가

|필드명|

--------

| A |

| A |

| B |

| C |

| A |

| C |

| C |

| B |

이런식으로 나열되어 있을 때 (물론 실제로는 Data가 훨씬더 많습니다.) 이것을 스트링그리드에 다음과 같이 나열하고 싶습니다. 순서는 물론 테이블에 나열된 순서로 가져와야 되구요. 근데 테이블을 한번 읽어서 'A'를 가져오고 또 읽어서 'B'를 가져오고 또다시 읽어서 'C'를 가져오면 되긴 되는데 자료가 많다보니 속도가 느리네요. 테이블을 한번만 읽으면서 필드명과 갯수를 가져올 수는 없을까요? for문과 if문이 많이 쓰일것도 같은데 잘안되네요



|필드명|갯수|

------- -----

| A | 3 |

| B | 3 |

| C | 2 |



간략하게나마 소스를 보여주셨으면 하구요 안되면 힌트라도 좀 주세요

도움 부탁합니다.

더운데 건강조심하시고..



2  COMMENTS
  • Profile
    김연기 2000.07.17 01:20
    박승규 wrote:

    > 예를 들어 어떤 테이블의 필드가

    > |필드명|

    > --------

    > | A |

    > | A |

    > | B |

    > | C |

    > | A |

    > | C |

    > | C |

    > | B |

    > 이런식으로 나열되어 있을 때 (물론 실제로는 Data가 훨씬더 많습니다.) 이것을 스트링그리드에 다음과 같이 나열하고 싶습니다. 순서는 물론 테이블에 나열된 순서로 가져와야 되구요. 근데 테이블을 한번 읽어서 'A'를 가져오고 또 읽어서 'B'를 가져오고 또다시 읽어서 'C'를 가져오면 되긴 되는데 자료가 많다보니 속도가 느리네요. 테이블을 한번만 읽으면서 중복된 자료를 하나씩만 가져올 수는 없을까요? for문과 if문이 많이 쓰일것도 같은데 잘안되네요

    >

    > |필드명|

    > ---------

    > | A |

    > | B |

    > | C |

    >

    > 간략하게나마 소스를 보여주셨으면 하구요 안되면 힌트라도 좀 주세요

    > 도움 부탁합니다.

    > 더운데 건강조심하시고..

    >



    TQuery를 사용하세요.



    SELECT DISTINCT

    원하는필드명,....

    FROM 가져올테이블명

    ORDER BY 정렬순서(필드명),...





  • Profile
    갱민이 2000.07.17 11:49
    김연기 wrote:

    > 박승규 wrote:

    > > 예를 들어 어떤 테이블의 필드가

    > > |필드명|

    > > --------

    > > | A |

    > > | A |

    > > | B |

    > > | C |

    > > | A |

    > > | C |

    > > | C |

    > > | B |

    > > 이런식으로 나열되어 있을 때 (물론 실제로는 Data가 훨씬더 많습니다.) 이것을 스트링그리드에 다음과 같이 나열하고 싶습니다. 순서는 물론 테이블에 나열된 순서로 가져와야 되구요. 근데 테이블을 한번 읽어서 'A'를 가져오고 또 읽어서 'B'를 가져오고 또다시 읽어서 'C'를 가져오면 되긴 되는데 자료가 많다보니 속도가 느리네요. 테이블을 한번만 읽으면서 중복된 자료를 하나씩만 가져올 수는 없을까요? for문과 if문이 많이 쓰일것도 같은데 잘안되네요

    > >

    > > |필드명|

    > > ---------

    > > | A |

    > > | B |

    > > | C |

    > >

    > > 간략하게나마 소스를 보여주셨으면 하구요 안되면 힌트라도 좀 주세요

    > > 도움 부탁합니다.

    > > 더운데 건강조심하시고..

    > >

    >

    > TQuery를 사용하세요.

    >

    > SELECT DISTINCT

    > 원하는필드명,....

    > FROM 가져올테이블명

    > ORDER BY 정렬순서(필드명),...

    >

    >



    추가로 GROUP BY문을 사용하십시오



    SELECT DISTINCT 필드명, COUNT(필드명) 카운트알리아스명

    FORM 테이블명

    GROUP BY 필드명



    이상을 사용하면 아래와 같은 결과가 날 올 겁니다.

    |필드명|갯수|

    ------- -----

    | A | 3 |

    | B | 3 |

    | C | 2 |

    • 윤상철
    • 2000.07.18 05:36
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 강상성
      2000.07.25 00:14
      저도 이것 때문에 상당히 고생했습니다. 하나 빼 먹은 속성이 있습니다. 도움말에도 언급이 되어 있지 않...
    • happykevin
      2000.07.19 19:03
      저도 믿을 수 없는 초보인데.. 이것은 우연하게 되더군요. 생각보다 간단합니다. 1) 우선 콤보박스에 ...
    • 구창민
    • 2000.07.18 03:31
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.07.18 19:56
      최영근 wrote: > 안녕하세요 ? > > 답변해 주셔서 고맙습니다. > 관련 소스들을 올립니다. > > >...
    • 타락천사
      2000.07.18 19:28
      글문 전 초보도 못돼나여? ㅠㅠ 흑흑...T_T 안구래두 요즘 고수덜이 초보라구 하는데...ㅠㅠ .....
    • 이상현
    • 2000.07.17 22:23
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.07.18 03:38
      이상현 wrote: > 저는 왕초보 갓 델파이를 시작한 학생입니다.. > > 책을보면서 열심히 연마(?) 하고있...
    • 사람
    • 2000.07.17 20:48
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      2000.07.18 03:28
      사람 wrote: > 다른 기능 필요없고 > 그냥 기본적인 복사,등록기능과 언인스톨 기능만 있으면됩니다. > ...
    • 타락천사
      2000.07.18 19:24
      안녕하세여 타락임다..^^ ListBox1 : Source, ListBox2 : Destination ListBox2.Itmes.Assign(ListBo...
    • 강인규
      2000.07.17 20:47
      예전에 만들었던건데 동작은 할거에요 var i : integer; begin if listbox1.items.Count < 1 then ...
    • somoon
    • 2000.07.17 16:14
    • 2 COMMENTS
    • /
    • 0 LIKES
    • somoon
      2000.07.18 15:39
      안녕하세요. 님이 친절히 알려주신 batchmove에 대하여 정말 너무나 감사합니다. 이렇게 간단하게 전 ...
    • 김영해
      2000.07.17 20:33
      somoon wrote: > 고수님들 안녕하십니까? > > query1의 전체 레코드를 table1에 복사하려합니다. > ...
    • chipwar
    • 2000.07.17 10:09
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이유정
    • 2000.07.17 06:40
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이경문
      2000.07.18 07:32
      이유정 wrote: > > 델파이에서 기본적으로 지원하는 소켓 컴포넌트대신에 > 다른곳에서 만들어진 win...
    • 양병규
      2000.07.17 11:44
      디비그리드의 셀을 디비와 상관없이 알아내려면... TCustomGrid를 상속받아서 새로운 그리드를 정의한다음...
    • 아세만
      2000.07.17 09:46
      김연기 wrote: > DBGrid 사용시에... > > DBGrid 특정 CELL에서 입력시 > 현재 CELL에 입력된 문자를 ...
    • 선해석
    • 2000.07.17 02:04
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 강인규
      2000.07.17 02:20
      그 방법보다는 Query1.Refresh; 이게 조금 나은 방법이죠.그래도 조금의 깜박거림은 감수해야할듯.....
    • 선해석
      2000.07.17 10:02
      강인규 wrote: > 그 방법보다는 > > Query1.Refresh; > > 이게 조금 나은 방법이죠.그래도 조금의 ...
    • 갱민이
      2000.07.17 11:37
      TDataSet의 Method에는 DisableControls,EnableControls가 있습니다. 이들 이용하면 TDataSet의 Open,Clo...
    •   
    • 2000.07.17 01:43
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 2001.11.24 01:08
      이렇게 답변글 올려주신 홍성락님께 진심으로 감사드립니다. 그런데, 저의 질문과 약간 엊갈리는 부분...
    • 김진호
      2000.07.18 03:00
      > 윈도우 API 함수중에 TextOut 이라는걸 이용해서 > 해당 DC에 문자열을 출력시킬 수 있는데.. > 그 출...
    • 양병규
      2000.07.17 11:51
      물론... API에 폰트를 바꾸고 그림을 그리는것들이 다 있습니다. 그런데... 질문하신분께 이런 내...
    •   
      2000.07.17 16:58
      죄송하지만 위에서 말했듯이 이런 답변을 요구한게 아니라서.. ^^; 저도 직접 1시간동안 API 함수만 뒤지...
    • 타락천사
      2000.07.18 19:19
      안녕하세여..타락임다..^^ 무슨 질문인가 곰곰히 생각해 봤는데, ..님의 의도를 모르겠더군여..ㅠㅠ ...
    • 박승규
    • 2000.07.17 01:23
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김연기
      2000.07.17 01:20
      박승규 wrote: > 예를 들어 어떤 테이블의 필드가 > |필드명| > -------- > | A | > | A...
    • 갱민이
      2000.07.17 11:49
      김연기 wrote: > 박승규 wrote: > > 예를 들어 어떤 테이블의 필드가 > > |필드명| > > -------- ...
    • 선해석
    • 2000.07.16 09:54
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 타락천사
      2000.07.16 22:25
      Time 대신 Now로 해보세여..
    • 선해석
      2000.07.16 23:46
      내용 없당께요.. 근디.. now랑 time이랑 무신 차이지??
    • 이승리
    • 2000.07.16 09:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김진호
      2000.07.18 00:06
      이승리 wrote: > 안녕하세요.. > > 이미지 박스에 그림을 불러올려 합니다.. 하드에서 말고, > 컴퓨터...
    • 델초보
    • 2000.07.16 02:52
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 어린왕자
      2000.07.19 03:41
      델초보 wrote: > 성적관리 프로그램을 해보려고 하는데요... > 관련 프로그램이나 소스같은 것 좀 올려주...
    • 한영수
    • 2000.07.16 01:36
    • 2 COMMENTS
    • /
    • 0 LIKES
    • parkisu
      2000.07.16 08:14
      한영수 wrote: > 초보적인 질문인데 알려주시분 계시리라 생각하며 질문 올립니다. > 데이타 베이스와 연...
    • 이경문
      2000.07.18 07:36
      코딩으로 해야 됩니다. 예를 들면 procedure TForm1.DataSource1Change(...); begin Edit1.Text := T...