Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 选择与另一列的值匹配的列值_Mysql_Sql_Sql Server - Fatal编程技术网

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

Mysql 选择与另一列的值匹配的列值,mysql,sql,sql-server,Mysql,Sql,Sql Server,我有一个名为“Employee”的MySQL表。它有七列,但只有两列值与我的问题相关。这两个列名是FullName和Name 以下是表中两列的一些示例值,以便于更好地理解 FullName Name ---------- MichealPhilips | Philips Louisfarak | louis Waynebruce | kirten 我想找到FullName value包含name值的行。所以

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

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

FullName                Name
----------
MichealPhilips      |   Philips
Louisfarak          |   louis
Waynebruce          |   kirten
我想找到FullName value包含name值的行。所以在我的例子中,答案应该是Michaelphilips和Louisfarak,而不是Wayne bruce,因为全名(Waynebruce)不包含名字(Kirten)

我尝试过这样的查询:

SELECT * FROM Employee WHERE FullName LIKE '%' || Name || '%';
但这似乎是一个错误的问题。它正在打印表中的所有行,我不知道为什么


有人能帮我吗?是否有其他方法编写此查询?我的查询错了吗?

这应该可以帮到你

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

也许加上括号?类似(“%”…);它可能只看到第一个“%”谢谢你的评论。我试过了,但它打印的是空的setTry:当
Name
(1)只包含空格或(2)是空字符串或(3)包含
NULL
s时会发生什么?谢谢你的查询。我得到了一个几乎相似的查询,这里有相同的问题:-。您的查询使用| |或逻辑OR的任何方式。基本上,您正在查询所有类似于%或Name或%的行。通配符将显示所有行。因此,您需要将通配符连接到名称列。首先,这是Oracle DB文档。MySQL文档位于dev.MySQL.com上。请看这里:为这个错误感到抱歉!!