タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

postgresqlとPostgreSQLとtipsに関するnao-tのブックマーク (3)

  • テキスト検索の方法とインデックス — Let's Postgres

    板垣 貴裕 テキスト検索にもさまざまな方法があります。大量のテキストを検索するにはインデックスを使って検索したいところですが、どんな検索にも応えられるインデックスというものは、さすがに存在しません。それぞれのアプリケーションの条件に適したテキスト検索方法やインデックスの張り方を選んで行きましょう。 今回説明するテキスト検索の方法の一覧を以下に挙げます。PostgreSQL ユーザが「全文テキスト検索」というと「単語単位の検索」を指すことが多いようです。また、「中間一致検索」が「あいまい検索」と呼ばれることもあるようです。用語が厳密な意味で使われないことも多いようなので、文脈には注意して解釈してください。 「単語単位の検索」と「中間一致検索」では、追加のモジュールを導入することで日語全文検索が可能なインデックスを作成できます。こちらは説明の後半で紹介します。以下、記事の内容です。 テキス

  • PostgreSQLで全角半角を区別しない問い合わせ

    STEP.2 関数を作成してSQL文を簡略にする このままではSQL文を書くのが面倒なので、関数を作成してSQL文を簡略にします。 CREATE OR REPLACE FUNCTION get_nocase_text (text) RETURNS text AS $$ SELECT translate(upper($1) ,'-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ ' ,'-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ '); $$ LANGUAGE SQL IMMUTABLE; と関数を作成しておくと、SQL文は次のようになります。 SELECT 商品cd, 商品名 FROM t_商品台帳 WHERE get_nocase_text(商品名) LIKE 'A4%'; STEP.3 式インデックスで高速にする 特定の列について

  • キャストを追加してバージョン互換性を保つには — Let's Postgres

    NTT オープンソースソフトウェアセンタ 板垣 貴裕 PostgreSQL 8.3 では型変換のチェックが厳密になるよう仕様変更されました。特に文字列型への暗黙の型変換が無くなったため、以前のバージョンで動作していたアプリケーションであっても 8.3 上ではエラーが発生するかもしれません。もちろん、一番確実な対応方法は、型を厳密に扱うようアプリケーションやSQLを書き換えることですが、アプリケーションの規模が大きかったり、そもそも書き換えができないケースもあるのではないかと思います。できれば、せっかく高速化された 8.3 へはバージョンアップしたいですし、互換性を保つ手軽な方法は何か無いでしょうか? 型エラーのメッセージ 型変換でエラーが発生している場合の典型的なエラーメッセージには、以下のようなものがあります。もし 8.3 へのバージョンアップ後にこれらのエラーが出力されるようならば、キ

  • 1