【原】SQL with的用法執行個體

來源:互聯網
上載者:User
DECLARE @City TABLE(    ID INT IDENTITY(1,1),    NAME NVARCHAR(50),    ParentID INT NULL)INSERT INTO @CityVALUES ('上海市', NULL), ('江蘇省', NULL), ('浙江省', NULL),        ('徐匯區', 1), ('閔行區', 1), ('黃浦區', 1),        ('南京市', 2), ('蘇州市', 2), ('常州市', 2),        ('杭州市', 3), ('溫州市', 3), ('餘姚市', 3)--SELECT * FROM @City;WITH tempCity (Id, NAME, ParentID, CityLevel)AS(    SELECT        ID, NAME, ParentID, 0 AS CityLevel    FROM        @City    WHERE        ParentID IS NULL    UNION ALL    SELECT        c.ID, c.NAME, c.ParentID, CityLevel + 1    FROM        @City c    JOIN        tempCity t    ON        c.ParentID = t.Id)SELECT * FROM tempCity

 

例子2:

;WITH entities(entityId, setEntityFieldTaskTypeId, valueToSet)  AS (    SELECT         customerID,,        CAST('8' AS VARCHAR(20))    FROM         ADMIN.dbo.customers WITH(NOLOCK)    WHERE        customerID = 13255    UNION ALL    SELECT        cia.iproBrokerID,,        CAST('0' AS VARCHAR(20))    FROM        ADMIN.dbo.customerIproAccounts cia WITH(NOLOCK), entities e    WHERE        cia.customerID = e.entityId AND        e.setEntityFieldTaskTypeId = 4    UNION ALL    SELECT        bm.eProBrokerID,,        CAST('False' AS VARCHAR(20))    FROM        dbo.brokerMappings bm WITH(NOLOCK), entities e    WHERE        BM.iProBrokerID = e.entityId AND        e.setEntityFieldTaskTypeId = 3)--SELECT * FROM entitiesSELECT    st.*FROM    dbo.scheduledTask st WITH(NOLOCK)INNER JOIN    dbo.setEntityFieldTask seft WITH(NOLOCK)ON    st.scheduledTaskId = seft.scheduledTaskIdINNER JOIN    entities eON    e.entityId = seft.entityId AND    e.setEntityFieldTaskTypeId = seft.setEntityFieldTaskTypeId AND    e.valueToSet = seft.valueToSetWHERE    st.taskStatusId = 1

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.