0
我有这个查询,我应该让它在SQL Azure上运行。SQL Azure,我应该删除'SELECT INTO',但如何使这个查询有效?
WITH RecursiveTable ([OrganizationUnitID])
AS (SELECT OrganizationUnitID
FROM OrganizationUnit AS ou ,
OrganizationUnitDefinition oud
WHERE (ParentOrganizationUnitID IN (
SELECT val
FROM CustomSPLIT(@strOUs, ','))
OR OrganizationUnitID IN (
SELECT val
FROM CustomSPLIT(@strOUs, ','))
)
AND (ou.OrganizationUnitDefinitionID = oud.OrganizationUnitDefinitionID)
UNION ALL
(SELECT ou.OrganizationUnitID
FROM OrganizationUnit AS ou
INNER JOIN RecursiveTable AS rt ON ou.ParentOrganizationUnitID = rt.OrganizationUnitID ,
OrganizationUnitDefinition AS oud
WHERE ou.OrganizationUnitDefinitionID = oud.OrganizationUnitDefinitionID
)
)
SELECT DISTINCT -- this
[OrganizationUnitID] -- won't work
INTO #tempEmployeeByOUIDs -- on azure
FROM RecursiveTable
明知“SELECT INTO”不会在Azure上工作,我修改了它的下方,但它给我下面的
附近有语法错误RecursiveTable“。
CREATE TABLE #temp ([OrganizationUnitID] CHAR(36))
--DROP TABLE #temp
INSERT INTO #temp
WITH RecursiveTable ([OrganizationUnitID])
AS (SELECT OrganizationUnitID
FROM OrganizationUnit AS ou ,
OrganizationUnitDefinition oud
WHERE (ParentOrganizationUnitID IN (
SELECT val
FROM CustomSPLIT(@strOUs, ','))
OR OrganizationUnitID IN (
SELECT val
FROM CustomSPLIT(@strOUs, ','))
)
AND (ou.OrganizationUnitDefinitionID = oud.OrganizationUnitDefinitionID)
UNION ALL
(SELECT ou.OrganizationUnitID
FROM OrganizationUnit AS ou
INNER JOIN RecursiveTable AS rt ON ou.ParentOrganizationUnitID = rt.OrganizationUnitID ,
OrganizationUnitDefinition AS oud
WHERE ou.OrganizationUnitDefinitionID = oud.OrganizationUnitDefinitionID
)
)
SELECT DISTINCT
[OrganizationUnitID]
--INTO #tempEmployeeByOUIDs
FROM RecursiveTable
做我错过了什么?