简体   繁体   English

MS SQL相关子查询,无法编写外部查询

[英]MS SQL correlated sub queries, Unable to write outer query

I need to write a sub query and it doesn't allow me to continue. 我需要编写一个子查询,它不允许我继续。 What is the wrong and how to achieve this? 这是什么问题,如何实现?

Error: Incorrect syntax near 'A'. 错误:“ A”附近的语法不正确。

SELECT * FROM 
(
    SELECT ID, 
        CAST([dbo].[SC_GetVersionedFieldValue](ID, '{25BED78C-4957-4165-998A-CA1B52F67497}') AS NVARCHAR(MAX)) AS '__Created',
        CAST([dbo].[SC_GetVersionedFieldValue](ID, '{D9CF14B1-FA16-4BA6-9288-E8A174D4D522}') AS NVARCHAR(MAX)) AS '__Updated'
    FROM [dbo].[Items] WHERE [TemplateID] = '{8CB33CED-3E7E-4263-AF97-71B22338D9C7}'        
) mytable A WHERE exists (SELECT ID FROM mytable B WHERE A.ID = B.ID) ;

FROM之前删除逗号,这很可能是导致错误的原因

You should remove mytable and as @harsh said remove comma. 您应该删除mytable并按照@harsh 所说的删除逗号。 Try below code. 尝试下面的代码。

SELECT * FROM 
(
    SELECT ID, 
        CAST([dbo].[SC_GetVersionedFieldValue](ID, '{25BED78C-4957-4165-998A-CA1B52F67497}') AS NVARCHAR(MAX)) AS '__Created',
        CAST([dbo].[SC_GetVersionedFieldValue](ID, '{D9CF14B1-FA16-4BA6-9288-E8A174D4D522}') AS NVARCHAR(MAX)) AS '__Updated'
    FROM [dbo].[Items] WHERE [TemplateID] = '{8CB33CED-3E7E-4263-AF97-71B22338D9C7}'        
) A 
    WHERE exists (SELECT ID FROM mytable B WHER A.ID = B.ID) ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM