複数の表で複数の列を検索したい。 考えるのテーブル::postgresqlランキングで複数列検索
ユーザー ID first_nameの last_nameの のuser_id アドレス
土地 名 のcompany_id
は、ユーザーがジョニー・ブラボー(ジョニーあるとしましょう メール
企業このような.bravo @ gmail.com)は米国のワシントンで働いています。 私は「食べた」クエリ に基づいてレコードを検索したい - 私は「RAVは」私のジョニー・ブラボーランクはので、他の電子メールとジョニーBravosより高い入力すると、米国、またはブラボー
から 「RAV」から>それは結果の最初です
どうすればこのような機能を実装できますか? 私はts_vectorとts_rankを見てきましたが、正しいワイルドカード( "to_tsquery( 'Brav:*')"だけがサポートされているようです)、フルテキスト検索機能は必要ありません住所やユーザー名などの名前を別名にする必要はありません)ワイルドカード検索を行うことはできますが、手動でアプリケーションのランキングを計算する必要があります
+1私が言及する唯一の言い分は、類似性()関数を使用してユーザに最も関連性の高い結果を与えることです。 –
同意して更新しました。 – hruske
お返事ありがとうございます!類似点funcは私が欲しいものではありません。私は間違いのスペルを探していませんが、複数の単語の出現率を高くしたいと思います。 ohnyがファーストネーム、電子メール、会社名になったときはランクが高くなります。どのようなアイデアを私はそれに使用することができますか? –