在MySQL搜索中使用字符串连接值

时间:2014-01-22 00:02:47

标签: php mysql sql

我基本上希望使用自定义字符串加入搜索值以查询数据库。

我的查询看起来像这样(当然,+'_ New'的部分不正确)

SELECT * FROM books b 
WHERE 
b.condition = 'Used' 
AND b.price < (SELECT b2.price FROM books b2 WHERE b2.id = b.isbn+'_New')

在上面的查询中,我试图返回比他们的“新”计数器部分便宜的所有旧书,执行此搜索的最有效方法是指定正确的ID(我检查它实际上快了10倍)

我不知道如何将字符串加入isbn值,任何帮助都不胜感激。

2 个答案:

答案 0 :(得分:3)

使用CONCAT

示例

WHERE b2.id = CONCAT(b.isbn, "_New")

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

答案 1 :(得分:0)

您应该使用CONCAT()

加入他们
SELECT * FROM books b 
WHERE 
b.condition = 'Used' 
AND b.price < (SELECT b2.price FROM books b2 WHERE b2.id = CONCAT(b.isbn, '_New'))