2013-11-02 55 views
0

我想知道....如果WHERE語句的值與輸入文本類似,是否可以從mysql數據庫檢索值?類似於similar_text()函數,但適用於搜索條件。從php數據庫中選擇值,其中條件值與輸入相似

例子:

<?php 
    $res = mysqli_query(*CONECTION*,"SELECT value FROM table WHERE condition=*is similar to x*"); 
    ?> 

如果這件事情是可能的,請告訴我怎麼樣。

+0

使用['LIKE'(http://beginner-sql-tutorial.com/sql-like-in-operators.htm)--- ['全文indexes']( http://www.tuxradar.com/practicalphp/9/3/18)也可以作爲一種選擇。 –

回答

0

你需要利用LIKE關鍵字的

SELECT value FROM table WHERE condition like %x% 

編輯:

好像你是Levenshtein算法。看看herehere
StackOverflow Thread

+0

我可以指定2個值應該有多相似嗎? – SpiderLinked

+0

'LIKE'不測試相似性。從文檔:「使用SQL簡單正則表達式比較的模式匹配」 –

+0

或'like%x'或'like x%';-) –

0
SELECT value, MATCH(value) AGAINST('x' IN BOOLEAN MODE) AS similarIndex 
FROM table WHERE MATCH(value) AGAINST ('x' IN BOOLEAN MODE) 
ORDER BY similarIndex DESC 
相關問題