我有以下代码:
SELECT (
SELECT COUNT(*)
FROM (
SELECT DISTINCT a.DtaId
FROM Tappt a
WHERE g.Id = a.TapptGroupsId
) AS t0
) AS Id
FROM Tappt t
LEFT JOIN TapptGroups g ON t.TapptGroupsId = g.Id;
在mysql中,它抛出错误: Unknown column 'g.Id' in 'where clause'
替代的t-sql代码在具有相同模式的mssqlserver中运行良好。
有人能解释一下是什么问题吗?
2条答案
按热度按时间brjng4g31#
我觉得你不需要
LEFT JOIN
在外部查询中。也许你想要:或:
mysql只在一个层次上识别相关子句——oracle是另一个具有此限制的数据库。您还可以通过在
FROM
条款。juud5qan2#
您可以将其重写为(一个嵌套级别):