将Inner Join中的列与AS相结合非常快速

时间:2015-12-29 20:55:55

标签: php mysql sql inner-join

我想要执行的查询如下;

SELECT 
    s1.sID,
    s2.name,
    s2.surname
FROM
    projects_staff s1
INNER JOIN
    staff s2 ON s1.sID = s2.sID

虽然,我非常希望将字段组合起来s2.name'和' s2.surname'作为' fullname'。因此,当我尝试以下查询时,我收到错误

Error Code: 1241. Operand should contain 1 column(s)

SELECT 
    s1.sID,
    (s2.name,
    s2.surname) AS fullname
FROM
    projects_staff s1
INNER JOIN
    staff s2 ON s1.sID = s2.sID

当我摆脱括号时,我的结果集又回来了;

sID, name, fullname

我在这里错过了什么?有没有可能做我想做的事情而不会经历太多的麻烦 - 如果是这样,我可以通过PHP做其余的事情。

非常感谢你快速回应,新年快乐亲爱的编码员。愿你有一个伟大的人。

2 个答案:

答案 0 :(得分:2)

你需要concat

SELECT 
   s1.sID,
   concat(s2.name,' ' , s2.surname) AS fullname
FROM    projects_staff s1
INNER JOIN  staff s2 ON s1.sID = s2.sID

答案 1 :(得分:1)

改为使用concat(s2.name, ' ', s2.surname) as fullname