2011-01-30 34 views
0

是否有将字符添加到选择查询中列中的每一行?为选择查询临时添加一个字符到MySQL列中的数据

例如像:

"SELECT * FROM table where data+' ' LIKE '%value %'" 

通知的+' ',这是我想补充,基本上我希望它的空间添加到数据值的末尾,以便在搜索时使用LIKE它会识别最后的空间。

+0

为什么不'WHERE data LIKE'%value%'`(注意'value`后面没有空格)? – deceze 2011-01-30 05:48:58

+0

@deceze他希望找到一个单词**结尾**与'价值' – 2011-01-30 05:55:05

回答

2

被称为concat

where concat(data, ' ') like '%value %';  <-- adding space at back 

where concat(' ', data) like '%value %';  <-- adding space in-front 

where concat(' ', data, ' ') like '%value %'; <-- adding space in-front, back 

细节:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_concat

或者,您也可以做到这一点,而不是

where data like concat('%', rtrim(value), '%'); 

这是rtrim的价值空间中搜索

记:与空间或没有spac e可能会影响匹配结果