나눔터  
  HOME > 나눔터 > 묻고답하기 > 액세스
액세스
액세스에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 드리미 (ydobon)

추천:  0
파일:     조회:  230
제목:   mid 한 결과를 group 할려면?
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

1. 액세스 버전(95,97,2000,2002):
2. 윈도우즈의 버전(win95,win98,winME,winNT,win2000,winXP):
3. CPU (486,PentiumI/II/III/IV...):
4. RAM (32,64,128,256,512MB,1G...): 

* 아래줄에 질문을 작성하세요 >> 

record 의 형태가

abcd,xyz
efgh,opar
........

이고, 이것을 mid 로 해서 앞에것만 뽑아낸 후, 
그것을 group by (혹은 distinct) 로 해서 다시
중복되지 않은것만 뽑아 내는 query 가 어떻게 되나요?

select a.FIELD_NAME from TABLE1 a, TABLE2 b where a.FIELD1 = b.FIELD1 group by mid(a.FIELD_NAME,1,instr(a.FIELD_NAME,',')-1)

도 에러나고,

select distinct mid(a.FIELD_NAME,1,instr(a.FIELD_NAME,',')-1) as RESULT  from TABLE1 a, TABLE2 b where a.FIELD1 = b.FIELD1 

도 error 가 나는데요???

미리 감사드립니다.
 
 
[불량 게시물 신고]  
초보맨테이블은 하나만 있는 것 같습니다....

Select Mid(FIELD_NAME,1,instr(FIELD_NAME,',')-1) as 새이름 From TABLE Group By Mid(FIELD_NAME,1,instr(FIELD_NAME,',')-1);
11-09 (15:22)
삭제 ■신고
드리미그것도 해봤는데 에러(invalid procedure call)나던데요? 원래 되는건가요?11-09 (15:42)
삭제 ■신고
드리미group by 뒤에 mid 가 가면 무조건 error 같은데,이거 어떻게 해야 할까요?11-09 (15:50)
삭제 ■신고
초보맨그런 건 아닌 것 같구요... 데이터중에 mid 구분에 에러를 유발하는 데이터가 있는 것 같습니다. 예를 들어 데이터 중에 ,가 없는 것이 있다던지요...11-09 (16:04)
삭제 ■신고
초보맨그런 경우라면 (FIELD_NAME이 aa 라 하고...)

SELECT IIf(InStr(aa,",")<>0,Mid([aa],1,InStr([aa],',')-1),aa) AS 새이름
FROM [Table]
GROUP BY IIf(InStr(aa,",")<>0,Mid([aa],1,InStr([aa],',')-1),aa);
11-09 (16:07)
삭제 ■신고
드리미Select Mid(FIELD_NAME,1,instr(FIELD_NAME,',')-1) as 새이름 From TABLE Group By FIELD_NAME;
하면중복제거 안된 결과들이 좌악 나오긴 하는데요. group by 뒤에다 mid를 놓기만 하면 에러가 납니다...원랜 되는건가요?
11-09 (16:15)
삭제 ■신고
드리미아, 덧글 다는 중에 다시 글을 올려주셨군요...감사합니다. 해보겠습니다..11-09 (16:16)
삭제 ■신고
드리미오옷,됩니다!!!! 아, 정말 감사합니다. 엄청 도움이 되었습니다!!!!11-09 (16:27)
삭제 ■신고
        
  

작성일 : 2004-11-09(14:12)
최종수정일 : 2004-11-09(15:11)