database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 39531 게시물 읽기
No. 39531
한 텍스트에 같이 출현하는 문자열 쌍의 갯수 구하는 방법..
작성자
fly_sky
작성일
2012-07-09 13:53
조회수
4,530

한 텍스트에 같이 출현하는 문자열 쌍의 갯수 구하는 방법..

안녕하세요? 테이블  A에 저장된 두 문자열 중에서, 테이블 B의 텍스트에서 동시에 나타나는 문자열 쌍의 갯수를 구하여, 이를 새로운 테이블 C에 insert하고자 합니다.

아래 문장과 같이 해보니까, TB_RESULT에 같은 키워드가 순서가 바뀌어 중복 저장되는 문제가 생기네요..

즉, TB_RESULT에 (AAA,BBB,2) 행과 (BBB,AAA,2) 행이 같이 저장되는데, 순서가 상관없으므로 둘 중 한가지만 저장되어야 합니다.

insert into TB_RESULT
select B.keyword, C.keyword, count(*)   
from TB_TEXT A, TB_KWD B, TB_KWD C   
where A.text like '%'||B.keyword||'%' and A.text like '%'||C.keyword||'%'  
group by B.keyword, C.keyword ;

좋은 방법을 알려주시면 감사하겠습니다. 

 

(TB_KWD)                                               (TB_TEXT)

keyword                                                  text

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

AAA                                                           XXX AAA BBB YYYY

BBB                                                          AAABBB RRR

CCC                                                         EEE BBB CCCKKKKKKK

DDD

(TB_RESULT: 기대하는 결과 테이블)

keyword1                  keyword2                 빈도

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

AAA                              BBB                          2              ( => BBB    AAA    2  행은 저장되면 안됨)

BBB                             CCC                        1                (=> CCC BBB 1   행은  저장되면 안됨)

이 글에 대한 댓글이 총 2건 있습니다.

AND b.keyword < c.keyword

마농(manon94)님이 2012-07-10 12:37에 작성한 댓글입니다.

이런 방법이 있었네요, 감사합니다~

fly_sky님이 2012-07-10 13:27에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
39534그룹내의 첫번째 row를 구하고 싶습니다. [1]
신동화
2012-07-10
10054
39533세로를 가로로 바꾸기 [1]
초보
2012-07-09
7323
39532각 필드의 행으로 나온 결과 값을 열로 나열 하는 방법 [1]
하승환
2012-07-09
5144
39531한 텍스트에 같이 출현하는 문자열 쌍의 갯수 구하는 방법.. [2]
fly_sky
2012-07-09
4530
39528windows server 2008 - Visual Basic - oracle10g [1]
나진산
2012-07-09
4440
39527부모찾는 쿼리가 궁금합니다.
덕군
2012-07-09
4458
39526프로시져,트리거 내리는 방법
초보
2012-07-09
3930
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다