2012-01-31 140 views
0

我试图EXCUTE内选择查询如下:错误与子查询Select语句

SET @rank = 0; 
SELECT @rank := @rank + 1 AS id, 
     (SELECT a.id, COUNT(*) FROM table_A a GROUP BY a.id) AS count 
FROM table_e e, table_p p 
WHERE id= '100'; 

,但我得到的讲座敬爱的

“操作数应包含1列(S)”

错误

我测试了它自己的子查询,它工作正常。它有什么问题?

编辑 其实我算子查询如下所示:

(SELECT COUNT(*) FROM table_e e, table_p p a GROUP BY p.id) AS count 

我正尝试指望有多少项目在table_e存在table_p。

+0

难道你不想在'table_p'上加入'table_e'吗? – Ben 2012-01-31 22:04:45

回答

1

问题是下面的查询,它选择两列的一个别名的一部分:

(SELECT a.id, COUNT(*) FROM table_A a GROUP BY a.id) AS count 

基地的别名的名称,选择a.id可能是没有必要的。