2013-02-13 75 views
4

该问题可能会多次提出,我检查了所有这些问题,但无法得到答案。 我有一个字段命名变量在我的数据库“test'.I工作过的查询MySql查询包含字段中的字符串

select 'variables' from test WHERE variables LIKE '%{$ifIndex}%'; 

变量字段包含逗号分隔字符串像ifIndex, IfType, IfStatus 但我无法得到它!

回答

3

尝试以下操作:

select variables from test WHERE 'ifIndex' LIKE CONCAT('%',`variables` , '%') ; 

如果你想仅仅是开始匹配:

select variables from test WHERE 'ifIndex' LIKE CONCAT(`variables` , '%') 
+0

如果该字段包含空格,怎么办?查询时可以替换吗? – Nikhil 2013-02-13 05:54:46

+0

你是什么意思的字段?像字段名称?或正在搜索的字段中的值?如果它的字段名称,你应该没有问题。否则,你需要考虑正则表达式..见http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html – Tucker 2013-02-13 05:58:51

+0

我的意思是有时表中的'变量'包含'ifIndex' – Nikhil 2013-02-13 06:01:41

1

你有没有找

select variables from test WHERE variables LIKE '%ifIndex%'; 

1

试试下面的代码

select variables from test 
WHERE variables LIKE '%{$ifIndex}%'; 

对于字段名称不把单quotaition。