[英]MySQL: how to delegate alias into subquery of subquery?
如何将DV_ID或DV.ID委托给第二个(更深的)子查询? 可能吗? (如果我只有一层嵌套,它将起作用。)
SELECT DV.ID DV_ID, (
SELECT COUNT(*) FROM (SELECT * MYTABLE VSV
WHERE VSV.ID = DV_ID //DV_ID is not seen...
GROUP BY VSV.ID) A ) B
FROM MYTABLE2 DV
在SELECT字段中使用别名时,在子查询中看不到列表。 您可以使用DV.ID(DV是表的别名)。
在您的示例中:
SELECT DV.ID DV_ID
您可以将输出别名替换为字符串,如下所示:
SELECT DV.ID "Hi my dear"
但不正确,请在查询的其他部分中读取该信息
您可以将特定查询重写为:
SELECT DV.ID as DV_ID,
(SELECT COUNT(DISTINCT VSV.ID)
FROM MYTABLE VSV
WHERE VSV.ID = DV.ID //DV_ID is not seen...
) as B
FROM MYTABLE2 DV;
(注意:如果VSV.ID
可以采用NULL
值,则表达式将为SELECT COUNT(DISTINCT vsv.ID) + MAX(vsv.id is null)
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.