如何制作SELECT col1,col2 FROM表WHERE col1 +" " + col2 LIKE" John D%"?

时间:2018-05-03 06:56:30

标签: mysql sql

我试图选择姓名+姓氏以" John D"开头的所有用户的姓名和名字,我的意思是它可以选择" John Doe",& #34; John Deniro"," John Dalas"。

但是这个选择不起作用:

SELECT name,lastname FROM users WHERE name+" "+lastname LIKE 'john D%';

那么,我该如何做到这一点呢?

3 个答案:

答案 0 :(得分:2)

您可以使用CONCAT

SELECT name,lastname FROM users 
WHERE CONCAT(name , ' ', lastname) LIKE 'John D%';

或(更好的解决方案因为条件为SARGable):

SELECT name,lastname FROM users 
WHERE name = 'John'
  and lastname LIKE 'D%'

答案 1 :(得分:0)

您应该拆分参数以使其正常工作。

SELECT `name`, `lastname`
FROM `users`
WHERE `name` LIKE "John%" AND `lastname` LIKE "D%"

答案 2 :(得分:0)

或者,如果表现非常重要......

SELECT name
     , lastname 
  FROM users 
 WHERE name = 'John'
   AND lastname LIKE 'D%';