2010-08-17 8 views
0

MySQL InnoDB Engine에서 "url2"라는 테이블을 사용하고 있습니다.MySQL에서 관련 데이터를 추출하는 방법은 무엇입니까?

SELECT url FROM url2 WHERE html LIKE '%Yuva%' OR url LIKE '%Yuva%' 

검색 용어 : 나는 다음과 같은 SQL 쿼리를 사용할 때 나는 결과를 많이 얻고있다 .... 등등 페이지의 전체 페이지의 HTML, URL에 너무 많은 데이터를 보유하고있어 yuva는 사용자 요청에 따라 변경 될 수 있습니다.
대다수의 데이터를 선택할 것입니다. 대부분 필요하지 않습니다. 어떻게 피할 수 있습니까? 위의 쿼리의 넣어
아웃 된이
www.123musiq.com
www.123musiq.com/home.html
www.123musiq.com/yuva.html
www.sensongs.com/
WWW입니다 .sensongs.com/hindi.html
www.sensongs.com/yuva.html

내가 필요로하는 출력은
은 관련성에 따르면이
www.123musiq.com/yuva과 같이 분류한다. html내 친구의 코멘트에서 같이

난의 MyISAM으로 테이블을 변경,하지만 난 123musiq.com을에 geting 오전에 대해 첫 번째 파일 www.sensongs.com/yuva.html
www.sensongs.com/hindi.html 25 이후에 나는 sensongs.ing 얻고 있습니다 2 123musiq.com에서 2 및 sensongs.com에서 2 관련성에 의해 순서를 얻을 수 있습니다

+4

글쎄, 전체 결과를 원하지 않는 이유를 설명하기 위해 데이터에서 찾고있는 것을 말하지 않았 으면 ... – Fosco

+0

테이블 스키마와 구체적으로 찾고있는 것을 제공 할 수 있습니까? 데이터? Yuva는 우리에게 관련성에 대해 아무것도 말하지 않습니다. –

답변

0

Full Text Index은 MySQL에서 MyISAM 테이블에서만 사용할 수 있습니다.

당신이 InnoDB 테이블을 사용하고 있기 때문에, 가장 쉬운 해결책은 원래의 테이블과 조인 할 텍스트 내용과 인덱스만으로 새로운 (MyISAM) 테이블을 만드는 것입니다 (이는 일반적인 경우에 효율성을 찾는 데에도 도움이됩니다) .

+0

어떻게 할 수 있습니까? 빠른가요? 나는 1TB – Jesvin

+0

의 arount 데이터를 가지고있다. 그래서 모든 그러한 검색은 데이터가 아닌 인덱스를 조회한다. – Javier

+0

문서를 확인하려면 색인을 만들고 MATCH() 쿼리를 사용해야합니다. 단지 MyISAM으로 전환해도 그렇게 할 때까지 아무런 차이가 없습니다. – Javier

0

아마도 당신은 LIMIT을 사용 하시겠습니까?

SELECT * FROM url2 WHERE html LIKE '%Yuva%' OR url LIKE '%Yuva%' LIMIT 2 
관련 문제