Bakit namin ginagamit ang CTE sa SQL Server?
Bakit namin ginagamit ang CTE sa SQL Server?

Video: Bakit namin ginagamit ang CTE sa SQL Server?

Video: Bakit namin ginagamit ang CTE sa SQL Server?
Video: Active Directory Foundations: Understanding this object database 2024, Nobyembre
Anonim

Ano ay a CTE o Karaniwang Ekspresyon ng Talahanayan sa SQL Server ? A CTE ( Karaniwang Pagpapahayag ng Talahanayan ) ay tumutukoy sa isang pansamantalang hanay ng resulta kung saan kaya mo pagkatapos gamitin sa isang SELECT statement. Ito ay nagiging isang maginhawang paraan upang pamahalaan ang mga kumplikadong query. Mga Karaniwang Ekspresyon sa Talahanayan ay tinukoy sa loob ng pahayag gamit ang WITH operator.

Gayundin, ang mga tao ay nagtatanong, kailan ko dapat gamitin ang CTE sa SQL Server?

Bakit to gamitin a CTE Sa SQL , kami gagamitin mga sub-query upang sumali sa mga talaan o salain ang mga talaan mula sa isang sub- tanong . Sa tuwing nagre-refer kami sa parehong data o sumali sa parehong hanay ng mga tala gamit isang sub- tanong , ang pagiging mapanatili ng code kalooban maging mahirap. A CTE ginagawang mas madali ang pagiging madaling mabasa at pagpapanatili.

Kasunod nito, ang tanong ay, paano ka gagawa ng CTE? Maaari mo ring gamitin ang a CTE sa isang GUMAWA isang view, bilang bahagi ng SELECT query ng view. Bilang karagdagan, mula sa SQL Server 2008, maaari kang magdagdag ng isang CTE sa bagong pahayag ng MERGE. Pagkatapos mong tukuyin ang iyong WITH clause sa mga CTE, maaari mo nang i-reference ang mga CTE gaya ng pagre-refer mo sa anumang iba pang talahanayan.

Dahil dito, ano ang mga pakinabang ng paggamit ng CTE sa SQL Server?

CTE gamitin upang palitan ang isang view na nag-iimbak ng metadata. Mga CTE tumulong na mapabuti ang pagiging madaling mabasa ng code nang hindi nakompromiso ang pagganap. Tumutulong ang mga ito na mapabuti ang pagpapanatili ng code nang hindi nakompromiso ang pagganap. Gumagawa sila ng pagsusulat ng recursive code sa T- SQL makabuluhang mas madali kaysa sa nauna SQL Server mga bersyon.

Pinapabuti ba ng CTE ang pagganap?

Ang isang pangunahing pagkakaiba ay ang optimizer pwede gumamit ng mga istatistika mula sa pansamantalang talahanayan upang maitatag ang plano ng query nito. Ito pwede resulta sa pagganap mga nadagdag. Gayundin, kung mayroon kang isang kumplikado CTE (subquery) na ginagamit nang higit sa isang beses, pagkatapos ay iimbak ito sa isang pansamantalang talahanayan kalooban madalas magbigay ng a pagpapalakas ng pagganap.

Inirerekumendang: