2013-02-21 59 views
0

我试图构建一个查询,显示第一个&姓氏&“打开者”的标签。这里的查询:在mysql中显示的列

SELECT a.account_id, 
     a.cust_id, 
     a.last_activity_date, 
     a.open_emp_id, 
     Concat(' Opened By ', e.fname, ' ', e.lname), 
     a.avail_balance 
FROM account a 
     INNER JOIN employee e 
       ON a.open_emp_id = e. emp_id 
WHERE NOT EXISTS (SELECT 1 
        FROM transaction t 
        WHERE t.txn_date = a.last_activity_date); 

这只是伟大工程列标签上写着CONCAT(' Opened By ', e.fname, ' ', e.lname),而不是仅仅e.fname & e.lname

回答

0

你可以使用AS关键字来命名您的列:

SELECT a.account_id, a.cust_id, a.last_activity_date, a.open_emp_id, 
CONCAT(' Opened By ', e.fname, ' ', e.lname) AS opened_by, a.avail_balance 
FROM account a INNER JOIN employee e 
ON a.open_emp_id = e. emp_id 
WHERE NOT EXISTS (SELECT 1 
FROM transaction t 
WHERE t.txn_date = a.last_activity_date); 
2

使用别名:

CONCAT(' Opened By ', e.fname, ' ', e.lname) AS opened_by 

现在,您可以参考这个结果,如果它是从一个叫opened_by

+0

如果我没有修复格式,我会先! Wahh – Kermit 2013-02-21 15:29:03

+1

哈哈。我经常在我之前发布其他答案,因为我在打字时很糟糕。考虑到我为了生活而这是讽刺。 – 2013-02-21 15:30:11

2

使用别名列...

... 
Concat(' Opened By ', e.fname, ' ', e.lname) AS 'openedBy', 
... 
+0

我有一个相关的问题。是否有可能使用姓和名显示客户名称的子查询,如果它是个人或公司名称,则标记为客户。我不知道如何合并:SELECT c.cust_id,c.cust_type_cd, CONCAT('Customer',i.fname,'',i.lname)as Customer, b.name business_name FROM customer c LEFT OUTER JOIN individual i ON c.cust_id = i.cust_id LEFT OUTER JOIN business b ON c.cust_id = b.cust_id;与上述。 – 2013-02-21 20:40:00

+0

只需使用'CASE'来确定它是个人还是业务,然后显示'CONCAT'或商家名称。 – Kermit 2013-02-21 20:43:15