我想验证中的数据 MYSQL
table。表有4个字段:
名字
中间名
姓氏
全名
我想比较一下 CONCAT(firstname, ' ', LASTNAME)
,匹配项 Fullname
以下是我使用的命令:
select * from user_info where CONCAT(firstname, ' ', lastname)
like CONCAT('%', fullname, '%')
然而,这是行不通的。但以下命令有效:
select * from user_info where CONCAT(firstname, ' ', lastname)
like '%JOHN DOE%'
这辆车有什么问题 MySQL
命令?
2条答案
按热度按时间1dkrff031#
你新附上的资料证实了我的猜测,即全名不一定只是由名字和姓氏组成,而是包括中间名,甚至可能缺少三个组成部分中的任何一个。这里的一个选项是Assert存在的每个组件确实以正确的顺序出现在全名的某个地方,例如。
演示
ldioqlga2#
您需要更改代码中的条件顺序:-
sql小提琴