我的问题非常简单 - 至少我希望是这样。我尝试在MySQL中连接两个表,并在连接字段上执行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%'
上的查询不返回任何内容。
任何帮助?
谢谢, 格雷格
答案 0 :(得分:1)
在IBM和John之间需要一个%......它正在寻找文本中的某个地方的“IBM John”......而不是IBM那么John在某个地方......