Pilih ke dalam tabel dengan CTE [duplikat]

Saya menggunakan SQL Management Studio 2012 dan saya ingin memilih kode berikut ke dalam tabel tetapi belum pernah melakukannya saat menggunakan CTE.

With UniqueService AS (

SELECT 

  CASE WHEN LAG(ScheduleOfServiceID,1) OVER (ORDER BY ScheduleOfServiceID ASC, ActualHoursPerWeek ASC) = ScheduleOfServiceID
     THEN 0
     ELSE 1
     END AS UniqueService

  ,[ClientID]
  ,[ClientName]
  ,[ScheduleOfServiceID]
  ,[ActualHoursPerWeek]
  ,[ServicePlannedStartDate]
  ,[ServicePlannedEndDate]
  ,[ServiceActualStartDate]
  ,[ServiceActualEndDate]
  ,[ServiceProvided]
  ,[ServiceProvider]
  ,[AllocatedWorkerTeam]
  ,[StartDateFormatted]
  ,[SOSStartYearMonth]
  ,[EndDateFormatted]
  ,[SOSEndYearMonth]
  ,[ServicePlacementStartReason]
  ,[RecordToBeExcluded]
  ,CASE WHEN EndDateFormatted IN ('')
        AND ServiceActualEndDate IS NULL
        AND ServicePlannedEndDate IS NULL
        THEN NULL 
        WHEN EndDateFormatted IS NULL
        THEN ServiceActualEndDate
        WHEN EndDateFormatted IS NULL
        AND ServiceActualEndDate IS NULL
        THEN ServicePlannedEndDate
        ELSE EndDateFormatted
    END AS MasterEndDate


FROM [BIPROJECT].[adults].[tAllAdultsDomiciliaryCareReporting]

WHERE RecordToBeExcluded != 1


)

SELECT *,
     CASE WHEN ServicePlannedStartDate BETWEEN '2016-04-01' AND '2016-08-31' 
          AND  (MasterEndDate IS NULL
          OR MasterEndDate > '2016/08/31')
          THEN 1
          ELSE 0
     END AS ServiceStarted,

     CASE WHEN MasterEndDate BETWEEN '2016-04-01' AND '2016-08-31' 
          AND ServicePlannedStartDate NOT BETWEEN '2016-04-01' AND '2016-08-31' 
          THEN 1
          ELSE 0
     END AS ServiceEnded,

    CASE WHEN ServicePlannedStartDate BETWEEN '2016-04-01' AND '2016-08-31' 
          AND MasterEndDate BETWEEN '2016-04-01' AND '2016-08-31' 
          THEN 1
          ELSE 0
     END AS ServiceStartedAndEnded

FROM UniqueService

WHERE UniqueService = 1
        AND (ServiceActualStartDate BETWEEN '2016-04-01' AND '2016-08-31' 
        OR MasterEndDate BETWEEN '2016-04-01' AND '2016-08-31')

ORDER BY ClientID ASC, ScheduleOfServiceID ASC

Saya telah membuka Google dengan cepat dan melihat beberapa postingan tumpukan lainnya tetapi belum berhasil.


person NHier1992    schedule 05.09.2016    source sumber
comment
pilih kode berikut ke dalam tabel Apakah Anda ingin memasukkan hasil kueri pemilihan di atas ke dalam tabel yang sudah ada atau Anda ingin membuat tabel baru dan memasukkan hasilnya   -  person Pரதீப்    schedule 05.09.2016
comment
Cukup tambahkan INTO #tempTable tepat sebelum pernyataan FROM.   -  person Chris Pickford    schedule 05.09.2016
comment
- atau INSERT INTO table (col1, col2, colN) tepat sebelum SELECT setelah definisi CTE.   -  person Chris Pickford    schedule 05.09.2016
comment
Ajaib @ChrisPickford terima kasih atas balasan cepatnya   -  person NHier1992    schedule 05.09.2016