Wat is CTE in SQL Server met voorbeeld?
Wat is CTE in SQL Server met voorbeeld?

Video: Wat is CTE in SQL Server met voorbeeld?

Video: Wat is CTE in SQL Server met voorbeeld?
Video: CTE (Common Table Expression) IN SQL With Examples| ADVANCE SQL TUTORIAL 2024, April
Anonim

A CTE ( Algemene tabeluitdrukking ) is 'n tydelike resultaatstel waarna jy kan verwys binne 'n ander SELECT-, INSERT-, UPDATE- of DELETE-stelling. Hulle is bekendgestel in SQL Server weergawe 2005. Let wel: Al die voorbeelde vir hierdie les is gebaseer op Microsoft SQL Server Management Studio en die AdventureWorks2012-databasis.

Boonop, hoekom gebruik ons CTE in SQL Server?

Hoekom om gebruik a CTE In SQL , ons sal gebruik subnavrae om by die rekords aan te sluit of die rekords uit 'n subnavraag te filter. Wanneer ook al ons verwys dieselfde data of sluit by dieselfde stel rekords aan gebruik 'n subnavraag, die kode-onderhoudbaarheid sal moeilik wees. A CTE maak verbeterde leesbaarheid en instandhouding makliker.

Tweedens, hoe gebruik ek twee CTE in SQL? Om gebruik verskeie CTE's in 'n enkele navraag hoef jy net die eerste te voltooi CTE , voeg 'n komma by, verklaar die naam en opsionele kolomme vir die volgende CTE , maak die oop CTE navraag met 'n komma, skryf die navraag, en kry toegang daartoe vanaf 'n CTE navraag later in dieselfde navraag of vanaf die finale navraag buite die CTE's.

As ons dit in die oog hou, kan ons CTE in die oog gebruik in SQL Server?

SQL Server CTE Basiese beginsels. Jy kan ook gebruik a CTE in 'n SKEP BESKOU verklaring, as deel van die siening KIES navraag. Daarbenewens, vanaf SQL Server 2008, jy kan voeg a CTE na die nuwe MERGE-verklaring. SQL Server ondersteun twee tipes CTE's - rekursief en nie-rekursief.

Is CTE's vinniger as subnavrae?

Die prestasie van CTE's en subnavrae behoort in teorie dieselfde te wees aangesien albei dieselfde inligting aan die navraagoptimeerder verskaf. Een verskil is dat a CTE meer gebruik as een keer kon maklik uitgeken en een keer bereken word. In 'n ideale wêreld sal die navraagoptimaliseerder die perfekte uitvoeringspad vind.

Aanbeveel: