MySQL
+----+-------------------+----------+--------------+
| id | address | city | state |
+----+-------------------+----------+--------------+
| 1 | 13000 highway 244 | keystone | south dakota |
+----+-------------------+----------+--------------+
(ちなみに、簡単にするためにいくつかの列を省略しました)
PHP
$string = mysql_real_escape_string('13000 highway 244 south dakota');
$a = mysql_query("
SELECT * FROM `table` WHERE
CONCAT_WS(' ', `address`, `city`, `state`) LIKE '%$string%'
");
上記の検索クエリは結果を返しません。次のクエリのみvalues
が機能します。
- 13000 ハイウェイ 244 キーストーン サウスダコタ
- 13000 ハイウェイ 244 キーストーン
- キーストーンサウスダコタ州
ただし、次のことも機能させたいと考えていますvalues
。
- 13000 ハイウェイ 244 サウスダコタ
- 13000ハイウェイキーストーン
- サウスダコタハイウェイキーストーン
- 等
に頼らなくてもそれは可能full-text search
ですか?