选择与另一列的值匹配的列值

时间:2014-10-25 15:26:45

标签: mysql sql sql-server

我有一个名为' Employee'的MySQL表。它有七列,但只有两列值与我的问题相关。两个列名称是FullName和Name。

以下是表格中两列的一些示例值,以便更好地理解。

FullName                Name
----------
MichealPhilips      |   Philips
Louisfarak          |   louis
Waynebruce          |   kirten

我想找到FullName值包含name值的行。所以在我的例子中答案应该是MichealPhilips和Louisfarak而不是Wayne bruce,因为FullName(Waynebruce)不包含Name(Kirten)。

我尝试过这样的查询:

SELECT * FROM Employee WHERE FullName LIKE '%' || Name || '%';

但它似乎是一个错误的查询。它正在打印表格中的所有行,我不知道为什么。

有人可以帮我吗?有没有其他方法来编写此查询?我的查询错了吗?

1 个答案:

答案 0 :(得分:1)

这应该为你做...

SELECT 
        a.FullName
FROM
        Employee a
WHERE
        a.FullName LIKE CONCAT('%', a.Name, '%')