concat mysql中的一个字段,在mysql中有一个计算字段别名

时间:2015-09-17 08:36:37

标签: mysql

我有这个查询示例:

SELECT users.name AS name, 2*2 AS field_aliases FROM users WHERE id > 0;

我需要连接users.name和field_aliases,就像这样,但它不起作用:

SELECT CONCAT(users.name, \' \', field_aliases), 2*2 AS field_aliases FROM users WHERE id > 0;

我该如何解决?我现在有这个错误:

  

'字段列表'中的未知列'field_aliases'

谢谢!

1 个答案:

答案 0 :(得分:0)

不,除非在外部查询中,否则不能在同一个选择列表中直接使用列别名。将您的查询更改为如下所示

SELECT CONCAT(users.name, \' \', 2*2), 
2*2 AS field_aliases 
FROM users 
WHERE id > 0;

(OR)访问外部查询中的列,如

SELECT *, CONCAT(users.name, \' \', field_aliases)
FROM (
SELECT users.name, 
2*2 AS field_aliases 
FROM users 
WHERE id > 0) xx;