PHPスクリプトによって駆動されるMySQLムービーポスター/ファンアートデータベースを構築しています。ユーザーが映画のタイトルを検索するオートコンプリート入力フィールドを作成しました。すべてのオートコンプリートフィールドが機能するように、ユーザーが入力を開始すると、ムービータイトルが表示されます。ワイルドカードを使用したMySQL LIKEステートメント
は今、MySQLのクエリは以下の通りです:
SELECT posters FROM pictures WHERE pictures LIKE '$text%'
上記のパターンは、入力した文字で始まるすべての映画のタイトルに一致します。 dartabaseにはaprox 10.000ムービータイトルが含まれているため、ユーザーが最初の文字を入力するとオートコンプリート機能に遅延が生じます。オートコンプリート機能内で検索クエリを高速化するには、文字列の先頭に少なくとも2文字以上の文字を一致させるパターンを使用したいと思います。 たとえば、ユーザーのタイプ:
'pie'
オートコンプリート機能が表示されるはずです:
'American pie'
'American pie 2'
助けないMySQLのワイルドカード '_'(アンダースコア)を使用します。オートコンプリート機能にこの機能を与える方法はありますか?
は
素敵!今は期待どおりに動作します!ありがとうございました。 – Nicero