2011-04-05 3 views
0

검색 양식과 그 뒤에있는 코드를 디자인해야합니다.PostgreSQL, PHP - 데이터베이스 검색을 설계하는 방법?

검색에 익숙하지 않습니다.

- Table_ads 
site_name 
ad_type 
uri 
pagetitle 
name_ad 
general_description_ad 
age 
country_ad 
location_ad 
zone_ad 

가 처음에 내 생각은 구글과 같은 검색, 우리는 하나의 텍스트 상자와 버튼 검색을 수행했지만, 나는이 어려울 것이라고 생각 :

내 표는 다음과 같은 측면을 가지고있다. 다른 옵션은 필드로 검색을 구축하는 것입니다 (전통 검색)

이 주제에 대해 어떻게 생각하십니까? 어떤 유형의 검색을해야합니까?

최고 감사합니다,

PS : 죄송합니다 내 영어.

+0

좀 더 구체적으로 기재 할 수 있습니까? 어떤 열을 사용자가 검색하기를 원하십니까? –

답변

1

"google 형"검색의 경우 전체 텍스트 검색 (FTS) 솔루션을 사용하는 것이 가장 좋습니다.

PostgreSQL 8.3 및 이후 버전에는 내장 FTS 엔진이 있으며 SQL로 쿼리하는 모든 작업을 수행 할 수 있습니다. 예 :

SELECT uri FROM ads WHERE fts @@ plainto_tsquery('cereal'); 

참조 문서 ->http://www.postgresql.org/docs/current/static/textsearch.html하고 그러나

:-) 더 많은 질문이있는 경우 돌아와, 상품 데이터베이스 FTS 전용 FTS보다 몇 배 느립니다. 당신이 더 나은 성능을 필요로하는 경우

그래서, 당신은 데이터베이스 외부의 인덱스, 여기

나는 스핑크스에게 추천 할 것입니다 구축해야한다 ->http://sphinxsearch.com/docs/current.html을, 스핑크스는 PHP 원활하게 통합합니다. 문서 (특별한 XML docset 형태)로 피드를 보내고 필요에 따라 또는 일부 스케줄러로 색인을 업데이트하십시오. 그런 다음 PHP에서 직접 검색합니다 (데이터베이스를 건드리지 않음).

HTH.

관련 문제