0
我的问题很简单 - 至少我希望它是。我尝试在MySQL中连接两个表,并在连接字段上执行WHERE语句以产生结果。下面是示例查询:MySQL CONCAT在WHERE声明(多表)
SELECT a.name, b.company, concat_ws(' ', a.company, b.name) as whole_name
FROM users as a
INNER JOIN company as b on a.company_id = b.company_id
HAVING whole_name LIKE '%IBM John%'
LIMIT 25
此查询似乎仍然从名称列拉,并将不返回任何结果。我试过这样做:
SELECT a.name, b.company, concat_ws(' ', a.company, b.name) as whole_name
FROM users as a
INNER JOIN company as b on a.company_id = b.company_id
WHERE concat_ws(' ', a.company, b.name) LIKE '%IBM John%'
LIMIT 25
而且它仍然不会产生任何结果。数据绝对在表格中。 John的公司是IBM Computer Systems。 whole_name
字段将返回'IBM Computer Systems John Smith'
,但在'%IBM John%'
上的查询不会返回任何内容。
任何帮助?
感谢, 格雷格
所以对于每个搜索词,你需要分解并添加'%'符号?如'%IBM%%John%'? – gregavola 2010-12-01 13:58:29