«cte» 태그된 질문

Common Table Expression의 약자입니다. 재귀적일 수있는 임시 재사용 가능한 하위 쿼리입니다.

7
CTE와 임시 테이블의 차이점은 무엇입니까?
공통 테이블 표현식 (CTE)과 임시 테이블의 차이점은 무엇입니까? 그리고 언제 다른 것을 사용해야합니까? CTE WITH cte (Column1, Column2, Column3) AS ( SELECT Column1, Column2, Column3 FROM SomeTable ) SELECT * FROM cte 임시 테이블 SELECT Column1, Column2, Column3 INTO #tmpTable FROM SomeTable SELECT * FROM #tmpTable
174 sql-server  cte 


3
공통 테이블 표현식 (CTE)의 이점은 무엇입니까?
이 질문은 데이터베이스 관리자 스택 Exchange에서 답변을 얻을 수 있기 때문에 스택 오버플 로 에서 마이그레이션 되었습니다. 7 년 전에 이주했습니다 . 에서 MSDN : 파생 테이블과 달리 CTE는 자체 참조가 가능하며 동일한 쿼리에서 여러 번 참조 될 수 있습니다. 저는 CTE를 많이 사용하고 있지만 CTE의 이점에 대해 깊이 생각해 …
21 sql-server  cte 

4
SQL 재귀는 실제로 어떻게 작동합니까?
다른 프로그래밍 언어에서 SQL로 돌아 오면 재귀 쿼리의 구조는 다소 이상하게 보입니다. 단계별로 살펴보면 부서지는 것처럼 보입니다. 다음과 같은 간단한 예를 고려하십시오. CREATE TABLE #NUMS (N BIGINT); INSERT INTO #NUMS VALUES (3), (5), (7); WITH R AS ( SELECT N FROM #NUMS UNION ALL SELECT N*N AS N FROM R …

5
CTE 결과를 캐시 (게으른 스풀)하기위한 계획 지침 작성
일반적으로 올바른 계획을 사용하는 쿼리를 먼저 구성하고 그렇지 않은 유사한 쿼리에 복사하여 계획 지침을 만듭니다. 그러나 특히 쿼리가 정확히 동일하지 않은 경우 때때로 까다로울 수 있습니다. 계획 지침을 처음부터 작성하는 올바른 방법은 무엇입니까? SQLKiwi는 SSIS에서 계획을 세우는 것에 대해 언급했습니다. SQL Server에 대한 올바른 계획을 세우는 데 도움이되는 방법이나 유용한 …
19 sql-server  t-sql  cte 

2
모든 어린이의 총계를 찾는 재귀 CTE
다음은 예상되는 결과를 가진 재귀 T-SQL쿼리 (아마도 CTE)를 사용하여 검색하려는 어셈블리 트리입니다 . 부품마다 주어진 어셈블리 당 총량을 알고 싶습니다. '리벳'을 검색하면 직계 자녀 수뿐만 아니라 어셈블리 내 각 수준의 총 수를 알고 싶습니다. Assembly (id:1) | |-Rivet |-Rivet |-SubAssembly (id:2) | | | |-Rivet | |-Bolt | |-Bolt | …

2
WITH를 사용하여 여러 작업
WITH문을 사용하여 여러 작업을 실행하는 방법이 있습니까? 같은 것 WITH T AS ( SELECT * FROM Tbl ) BEGIN OPEN P_OUTCURSOR FOR SELECT * FROM T; SELECT COUNT(*) INTO P_OUTCOUNT FROM T; END; 일부 데이터와 그 수를 선택하고 싶습니다 ...
16 oracle  select  cte 

2
PostgreSQL 재귀 하위 깊이
조상으로부터 후손의 깊이를 계산해야합니다. 레코드에가 ​​있으면 object_id = parent_id = ancestor_id루트 노드 (조상)로 간주됩니다. WITH RECURSIVEPostgreSQL 9.4 에서 쿼리를 실행 하려고했습니다 . 데이터 또는 열을 제어하지 않습니다. 데이터 및 테이블 스키마는 외부 소스에서 가져옵니다. 테이블은 지속적으로 성장하고 있습니다 . 현재 하루에 약 30k 레코드가 있습니다. 트리의 모든 노드가 누락 될 …

3
CTE 계층 최적화
아래 업데이트 계정 계층 구조를 나타내는 일반적인 계정 / 부모 계정 아키텍처를 가진 계정 테이블이 있습니다 (SQL Server 2012). 계층 구조를 해시하기 위해 CTE를 사용하여 VIEW를 만들었으며 전체적으로 아름답고 의도 한대로 작동합니다. 모든 수준에서 계층 구조를 쿼리하고 분기를 쉽게 볼 수 있습니다. 계층의 함수로 리턴해야하는 하나의 비즈니스 로직 필드가 있습니다. …

2
CTE 내부에서 호출 될 때 PostgreSQL 함수가 실행되지 않습니다
내 관찰을 확인하고 왜 이런 일이 일어나는지 설명하기를 바라고 있습니다. 다음과 같이 정의 된 함수가 있습니다. CREATE OR REPLACE FUNCTION "public"."__post_users_id_coin" ("coins" integer, "userid" integer) RETURNS TABLE (id integer) AS ' UPDATE users SET coin = coin + coins WHERE userid = users.id RETURNING users.id' LANGUAGE "sql" COST 100 ROWS …
14 postgresql  cte 

2
CTE가 세미콜론으로 시작해야하는 이유는 무엇입니까?
Aaron Bertrand가 숫자 표 대신 CTE를 사용하도록 제안하는 StackOverflow 의 게시물을 보았습니다 . 이는 당면한 작업을 수행하는 우아한 방법입니다. 제 질문은 왜 CTE의 첫 번째 줄이 세미콜론으로 시작합니까? ;WITH n AS (SELECT TOP (10000) n FROM (SELECT n = ROW_NUMBER() OVER (ORDER BY s1.[object_id]) FROM sys.all_objects AS s1 CROSS JOIN …
14 sql-server  t-sql  cte  syntax 

2
CTE에 삽입 된 행을 동일한 명령문으로 업데이트 할 수없는 이유는 무엇입니까?
PostgreSQL 9.5에서 다음과 같이 생성 된 간단한 테이블이 주어졌습니다. create table tbl ( id serial primary key, val integer ); SQL을 실행하여 값을 삽입 한 다음 동일한 명령문에서 업데이트합니다. WITH newval AS ( INSERT INTO tbl(val) VALUES (1) RETURNING id ) UPDATE tbl SET val=2 FROM newval WHERE tbl.id=newval.id; 결과적으로 …
13 postgresql  cte 

1
SQL Server Audit Data에서 Scalar Valued User-Defined 함수 사용을 필터링하는 방법은 무엇입니까?
데이터베이스에 대한 모든 실행 작업을 감사하는 데이터베이스 감사 사양이있는 SQL Server 데이터베이스가 있습니다. CREATE DATABASE AUDIT SPECIFICATION [dbAudit] FOR SERVER AUDIT [servAudit] ADD (EXECUTE ON DATABASE::[DatabaseName] BY [public]) 일부 쿼리는 결과 집합의 모든 행에 대해 스칼라 함수 사용을 감사 로그에 기록한다는 것을 알았습니다. 이런 일이 발생하면, 로그는 마지막 휴게소로 ETL하기 …

1
확장 된 트리와 같은 방식으로 재귀 쿼리 결과를 어떻게 정렬합니까?
다음 nodes과 같은 테이블이 있다고 가정 해 봅시다 . CREATE TABLE nodes ( node serial PRIMARY KEY, parent integer NULL REFERENCES nodes(node), ts timestamp NOT NULL DEFAULT now() ); 루트 노드가 최상위 노드에 있고 루트 노드 또는 다른 하위 노드에서 매달려있는 여러 하위 노드가있는 표준 노드 형 트리 구조를 나타냅니다. …

1
유형 수정자를 사용한 데이터 유형에 대한 놀라운 결과
이 질문에 대한 재귀 CTE 솔루션을 논의하는 동안 : 각 ID에 대한 마지막 5 개의 고유 한 값 가져 오기 @ypercube 는 놀라운 예외를 우연히 발견하여 유형 수정 자의 처리를 조사했습니다. 우리는 놀라운 행동을 발견했습니다. 1. 유형 캐스트는 일부 상황에서 유형 수정자를 유지합니다. 지시하지 않더라도. 가장 기본적인 예 : SELECT …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.