SQL:复合查询

时间:2017-12-20 21:11:46

标签: mysql sql sql-server

是否可以形成一个查询,其中table1.first_name +“”+ table1.last_name与table2.customer_name匹配?

IE: customers.first_name =“约翰” customers.last_name =“Doe”

orders.customer_name =“John Doe”

在我看来,这将是一个常见的查询,但是不能直观地提出语法。

另外,我被认为这不是一个“最佳实践”解决方案(使用id字段会更好),但如果我无法控制架构,我只想知道是否有类似我的方法甚至可能。

2 个答案:

答案 0 :(得分:2)

您正在寻找concat

where concat(customers.first_name,' ',customers.last_name) = orders.customer_name 

答案 1 :(得分:0)

您可以连接值并比较结果:

(customers.first_name || ' ' || customers.last_name) = orders.customer_name

仅为了便于阅读而使用括号