我無法讓此代碼正常工作。任何想法如何改變?我試着在整個條件下添加()
,但似乎並沒有解決它。MySQL鏈多個「匹配」
SELECT * FROM clients WHERE
MATCH(LNAME) AGAINST('aaaa') OR
MATCH(FNAME) AGAINST('aaaa') OR
MATCH(MAIL) AGAINST('aaaa') OR
MATCH(TEL) AGAINST('aaaa')
我無法讓此代碼正常工作。任何想法如何改變?我試着在整個條件下添加()
,但似乎並沒有解決它。MySQL鏈多個「匹配」
SELECT * FROM clients WHERE
MATCH(LNAME) AGAINST('aaaa') OR
MATCH(FNAME) AGAINST('aaaa') OR
MATCH(MAIL) AGAINST('aaaa') OR
MATCH(TEL) AGAINST('aaaa')
SELECT * FROM `clients` WHERE
MATCH(`LNAME`) AGAINST('aaaa') OR
MATCH(`FNAME`) AGAINST('aaaa') OR
MATCH(`MAIL`) AGAINST('aaaa') OR
MATCH(`TEL`) AGAINST('aaaa')
OR
SELECT * FROM `clients` WHERE MATCH(`LNAME`,`FNAME`,`MAIL`,`TEL`) AGAINST('aaaa');
你匹配所有的人都對一個字符串?您可以通過組合它們來縮短查詢時間。
SELECT * FROM `clients` WHERE
MATCH(`LNAME`,`FNAME`,`MAIL`,`TEL`) AGAINST('aaaa')
$ srch-> consultar(「SELECT *,MATCH(TECNOLOGIA,descriptores,autorTecnologia)AGAINST('$拿督IN BOOLEAN MODE)AS分數。數據表FROM WHERE MATCH(TECNOLOGIA,descriptores,autorTecnologia)反對( '$ dato'在BOOLEAN模式)具有> 0.5「);
分頁使用
$ SQL = $ obj-> consultas(「SELECT *,MATCH(TECNOLOGIA,descriptores)AGAINST( '$ PARAM' IN BOOLEAN MODE)AS分數。數據表FROM WHERE MATCH(TECNOLOGIA,descriptores) AGAINST('BOOLEAN模式下的$ param')具有puntuacion> 0.2 order by puntuacion desc limit $ initReg,$ TamPag「);
謝謝,這工作正常。但是你有什麼想法,爲什麼當LNAME,FNAME ......至少有3個字符時,我只能得到retun?我可以調整嗎? – cmplieger 2012-03-07 00:38:58
請接受並投票... – Teja 2012-03-07 00:40:05
是的,它檢索我們的數據時使用OR條件... – Teja 2012-03-07 00:40:39