匹配描述与给出代码字

时间:2013-11-18 05:24:40

标签: mysql

需要有关此查询的帮助,无法使其正常工作

SELECT  a.code, a.description, a.adjustment FROM activity AS a 
WHERE a.pid = $customer_id AND a.consult = $consultation_id AND a.code LIKE $code

$ code equals可以是这样的“12043 OFFICE CONSULT”(当然不同描述的不同数字)或'DE-POSIT'或'UNKNOWN'

问题是DB存储这个像“12043 OFF”或UNKNOWN。我的查询只匹配未知数,但不匹配数字。如果我这样做,它可以匹配一个数字

a.code REGEXP'^ [0-9] +'但匹配任何不完全匹配的数字。

如果有多行具有不同的数字,则将第一个匹配放在所有行上

2 个答案:

答案 0 :(得分:0)

尝试使用LIKE CONCAT('%', $code ,'%')

SELECT  a.code, a.description, a.adjustment FROM activity AS a 
WHERE a.pid = $customer_id AND a.consult = $consultation_id AND a.code LIKE CONCAT('%', $code ,'%')

答案 1 :(得分:0)

你可以尝试,LIKE '%$code%'它获取包含代码值的记录。

"SELECT  a.code, a.description, a.adjustment FROM activity AS a
WHERE a.pid = $customer_id AND a.consult = $consultation_id AND a.code LIKE '%$code%'";

参考:http://www.tutorialspoint.com/mysql/mysql-like-clause.htm