我基本上希望使用自定义字符串加入搜索值以查询数据库。
我的查询看起来像这样(当然,+'_ 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值,任何帮助都不胜感激。
答案 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'))