Бид яагаад SQL сервер дээр CTE ашигладаг вэ?
Бид яагаад SQL сервер дээр CTE ашигладаг вэ?

Видео: Бид яагаад SQL сервер дээр CTE ашигладаг вэ?

Видео: Бид яагаад SQL сервер дээр CTE ашигладаг вэ?
Видео: Настройка MS SQL Server 2012 (2008) для удаленных подключений 2024, Арваннэгдүгээр
Anonim

Юу байна а CTE эсвэл SQL сервер дэх нийтлэг хүснэгтийн илэрхийлэл ? А CTE ( Нийтлэг хүснэгтийн илэрхийлэл ) түр зуурын үр дүнгийн багцыг тодорхойлдог чи чадна тэгээд ашиглах SELECT мэдэгдэлд. Энэ нь төвөгтэй асуултуудыг удирдах тохиромжтой арга болж хувирдаг. Хүснэгтийн нийтлэг илэрхийлэл байна мэдэгдэлд тодорхойлсон ашиглах WITH оператор.

Үүний нэгэн адил хүмүүс би SQL Server дээр CTE-г хэзээ ашиглах ёстой вэ гэж асуудаг.

Яагаад ашиглах а CTE онд SQL , бид ашиглах болно бүртгэлд нэгдэх эсвэл дэд хэсгээс бичлэгүүдийг шүүх дэд асуулга. асуулга . Бид ижил өгөгдөлд хандах эсвэл ижил бүртгэлд нэгдэх бүрт ашиглах дэд асуулга , кодын засвар үйлчилгээ болно хэцүү байх. А CTE Унших чадварыг сайжруулж, засвар үйлчилгээ хийхэд хялбар болгодог.

Дараа нь та CTE-г хэрхэн хийх вэ гэсэн асуулт гарч ирнэ. Та бас ашиглаж болно CTE дотор БҮТЭЭХ харагдацын SELECT асуулгын нэг хэсэг болгон харах. Нэмж дурдахад, SQL Server 2008 хувилбарын хувьд та a CTE шинэ MERGE мэдэгдэлд. Та WITH заалтаа CTE-ээр тодорхойлсныхоо дараа бусад хүснэгтэд иш татсан шиг CTE-г лавлаж болно.

Тиймээс, SQL сервер дээр CTE ашиглах нь ямар давуу талтай вэ?

CTE мета өгөгдлийг хадгалдаг харагдацыг солиход ашиглагдана. CTE гүйцэтгэлийг алдагдуулахгүйгээр кодын унших чадварыг сайжруулахад тусална. Эдгээр нь гүйцэтгэлийг алдагдуулахгүйгээр кодын засвар үйлчилгээг сайжруулахад тусалдаг. Тэд T-д рекурсив код бичдэг. SQL өмнөхөөсөө хамаагүй хялбар SQL сервер хувилбарууд.

CTE гүйцэтгэлийг сайжруулдаг уу?

Нэг гол ялгаа нь оновчтой болгох явдал юм чадна түр хүснэгтийн статистик мэдээллийг ашиглан асуулгын төлөвлөгөөг бий болгох. Энэ чадна үр дүнд нь гүйцэтгэл олз. Түүнчлэн, хэрэв танд төвөгтэй зүйл байгаа бол CTE (дэд асуулга) нь нэгээс олон удаа ашиглагдаж, түр зуурын хүснэгтэд хадгалагдана болно ихэвчлэн өгдөг гүйцэтгэлийн өсөлт.

Зөвлөмж болгож буй: