php / sqlite3 - 查询 - 在搜索中混合数据列

时间:2017-02-01 21:21:16

标签: php sqlite

我正在使用中文 - 我们有字符和发音(拼音)。

我想在php中使用sqlite3查询来混合字符和拼音发音进行搜索。

示例:我们想要找到hello的中文字词 - >你好|所以我们的字符是:你好和(为了示例)发音是ni hao(为了简单起见,我们省略了音调)。

DB会看起来像这样:

| CHAR | PIN |

|你好|你好|

我怎样才能混合搭配CHAR&查询中的PIN列信息?例如:我如何搜索你haoni好来查找我的好项?

我的查询目前看起来像是:

$results = $db->query( "SELECT CHS, PIN, DEF FROM MAIN WHERE CHS LIKE '%".$q."%' OR REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(PIN, '1',''),'2',''),'3',''), '4',''),' ','') LIKE '%".$q."%' OR PIN LIKE '%".$q."%' OR REPLACE(PIN, ' ','') LIKE '%".$q."%' OR REPLACE(REPLACE(REPLACE(REPLACE(PIN, '1',''),'2',''),'3',''), '4','') LIKE '%".$q."%' ORDER BY PIN ASC");
while ($row = $results->fetchArray()) {

0 个答案:

没有答案