programing

쿼리를 사용하여 임시 테이블에 데이터 삽입

mbctv 2023. 4. 6. 23:28
반응형

쿼리를 사용하여 임시 테이블에 데이터 삽입

현재 데이터를 출력하는 기존 쿼리가 있으며 Temp 테이블에 삽입하고 싶은데 문제가 있습니다.이걸 어떻게 하는지 아는 사람 있나요?

여기 예가 있습니다.

SELECT *
FROM  (SELECT Received,
              Total,
              Answer,
              ( CASE
                  WHEN application LIKE '%STUFF%' THEN 'MORESTUFF'
                END ) AS application
       FROM   FirstTable
       WHERE  Recieved = 1
              AND application = 'MORESTUFF'
       GROUP  BY CASE
                   WHEN application LIKE '%STUFF%' THEN 'MORESTUFF'
                 END) data
WHERE  application LIKE isNull('%MORESTUFF%', '%') 

이것은 현재 필요한 방식으로 데이터를 출력하는 것처럼 보이지만, Temp Table로 전달하고 싶습니다.문제는 SQL Query를 처음 접하는 사람이라 아직 방법을 찾지 못했다는 것입니다.아니면 그게 가능할지라도.만약 가능하지 않다면, 제가 찾고 있는 데이터를 얻을 수 있는 더 좋은 방법이 있을까요?WHERE application LIKE isNull('%MORESTUFF%','%')임시직 테이블로요?

SELECT *
INTO #Temp
FROM

  (SELECT
     Received,
     Total,
     Answer,
     (CASE WHEN application LIKE '%STUFF%' THEN 'MORESTUFF' END) AS application
   FROM
     FirstTable
   WHERE
     Recieved = 1 AND
     application = 'MORESTUFF'
   GROUP BY
     CASE WHEN application LIKE '%STUFF%' THEN 'MORESTUFF' END) data
WHERE
  application LIKE
    isNull(
      '%MORESTUFF%',
      '%')

SQL Server R2 2008에는AS다음 절을 참조해 주세요.

SELECT * 
INTO #temp
FROM (
    SELECT col1, col2
    FROM table1
) AS x

쿼리가 실패했습니다.AS x마지막에.


편집

SS2016을 사용할 때도 필요합니다.as t끝까지.

 Select * into #result from (SELECT * FROM  #temp where [id] = @id) as t //<-- as t

가장 빠른 방법은 "SELECT INTO" 명령을 사용하는 것입니다.

SELECT * INTO #TempTableName
FROM....

이렇게 하면 새 테이블이 생성되므로 미리 작성할 필요가 없습니다.

개인적으로, 나는 이것을 어떻게 사용하는지 알아내는 작은 손이 필요했고, 그것은 정말 대단했다.

IF(OBJECT_ID('tempdb..#TEMP') IS NOT NULL) BEGIN DROP TABLE #TEMP END
        SELECT *
            INTO #TEMP
            FROM (
            The query you want to use many times
            ) AS X

SELECT * FROM #TEMP WHERE THIS = THAT
SELECT * FROM #TEMP WHERE THIS <> THAT
SELECT COL1,COL3 FROM #TEMP WHERE THIS > THAT

DROP TABLE #TEMP

다음과 같이 할 수 있습니다.

INSERT INTO myTable (colum1, column2)
SELECT column1, column2 FROM OtherTable;

데이터 유형에서와 같이 두 열이 모두 숫자로 일치하는지 확인하십시오.

이것을 시험해 보세요.

SELECT *
INTO #Temp
FROM 
(select * from tblorders where busidate ='2016-11-24' and locationID=12
) as X

스크립트에 실패하지 않도록 x와 함께 에일리어스를 사용하세요.

SELECT * INTO #TempTable 
FROM SampleTable
WHERE...

SELECT * FROM #TempTable
DROP TABLE #TempTable

이것은 가능합니다.다음과 같이 시도해 보십시오.

Create Global Temporary Table 
BossaDoSamba 
On Commit Preserve Rows 
As 
select ArtistName, sum(Songs) As NumberOfSongs 
 from Spotfy 
    where ArtistName = 'BossaDoSamba'
 group by ArtistName;

질의 끝에 사용하다

temp_table로 #temp에 *를 선택합니다(table1, table2에서 *를 선택).

언급URL : https://stackoverflow.com/questions/20107827/insert-data-into-temp-table-with-query

반응형