2013-06-13 105 views
0

我在mysql表中有一个varchar字段,我想在php中搜索字符串,这是字母数字 现在它只显示数字结果。搜索字母数字字符串

例如,如果我搜索那么它应该显示的结果匹配111(111A,111B,111C)。如果我搜索111A那么它应该显示111A的结果。 如何做到这一点。

+1

到底哪里像 '%111%' – CaffeineShots

回答

2

似乎你的情况是相反的LIKE呢。它看起来像你已经使用LIKE,并不应该用它来完成任何匹配。查询可能看起来像

SELECT myField from MyTable where myValue = '111' 
SELECT myField from MyTable where myValue = '111A' 

为了实现相反

您可以使用LIKE

SELECT myField from MyTable where myValue LIKE '111%' 

这对于像111Anything

SELECT myField from MyTable where myValue LIKE '%111%' 

这是海峡像Anything111Anything英格斯

SELECT myField from MyTable where myValue LIKE '%111' 

这是串像Anything111在PHP

+0

列这将工作! – CaffeineShots

+0

谢谢。 (从MyTable中选择myField,其中myValue ='111')工作。 – raul

0

而不是LIKE可以使用REGEXP

对于开始111

SELECT myField from MyTable where myValue REGEXP `^111`; 

对于最终以111

SELECT myField from MyTable where myValue REGEXP `111$`; 

对于开始与111与111

SELECT myField from MyTable where myValue REGEXP `^111$`;