SQL Server-д нэгдэх болон нэгдсэн бүх хоорондын ялгаа

Агуулгын хүснэгт:

SQL Server-д нэгдэх болон нэгдсэн бүх хоорондын ялгаа
SQL Server-д нэгдэх болон нэгдсэн бүх хоорондын ялгаа

Видео: SQL Server-д нэгдэх болон нэгдсэн бүх хоорондын ялгаа

Видео: SQL Server-д нэгдэх болон нэгдсэн бүх хоорондын ялгаа
Видео: ЭНЭ Л4D2 ДАХЬ МИНИЙ ЗАМ 2024, Долдугаар сарын
Anonim

SQL серверийн нэгдэл болон union хоёрын гол ялгаа нь нэгдэл нь үүссэн өгөгдлийн багцыг давхардсан мөргүйгээр өгдөг бол нэгдэл нь үр дүнгийн өгөгдлийн багцыг давхардсан мөртэй өгдөгт оршино.

DBMS нь мэдээллийн сан үүсгэх, удирдах програм хангамж юм. Өгөгдлийн сан нь олон хүснэгтээс бүрдэх ба хүснэгтүүд хоорондоо холбоотой байдаг. DBMS нь мэдээллийн сан үүсгэх, хүснэгт үүсгэх, өгөгдөл оруулах, шинэчлэх гэх мэт үйлдлүүдийг хийхэд тусалдаг. Цаашилбал, энэ нь өгөгдлийн аюулгүй байдлыг хангаж, өгөгдлийн тогтвортой байдлыг хангах үүднээс өгөгдлийн илүүдлийг бууруулдаг. SQL сервер нь ийм DBMS юм. Structured Query Language (SQL) нь DBMS дахь өгөгдлийг удирдах хэл юм. Union болон union бүгд SQL дээрх хоёр тушаал бөгөөд хүснэгтийн өгөгдөлд тохируулсан үйлдлийг гүйцэтгэхэд тусалдаг.

SQL сервер дэх Union гэж юу вэ?

Заримдаа SQL дээр тохируулсан үйлдлүүдийг хийх шаардлагатай болдог. Тэдний нэг нь Холбоо юм.

SQL сервер дэх бүх холбоо ба нэгдэл хоёрын ялгаа
SQL сервер дэх бүх холбоо ба нэгдэл хоёрын ялгаа

Union нь хоёр ба түүнээс дээш сонгогдсон мэдэгдлийн үр дүнг нэгтгэдэг. Үүний дараа энэ нь ямар ч давхардсан мөргүйгээр үр дүнг буцаана. Энэ үйлдлийг гүйцэтгэхийн тулд хүснэгтүүд ижил тооны багана, ижил өгөгдлийн төрлүүдтэй байх ёстой. Доорх хоёр хүснэгтээс харна уу.

SQL Server дээрх нэгдэл ба нэгдлийн хоорондох ялгаа_Зураг 2
SQL Server дээрх нэгдэл ба нэгдлийн хоорондох ялгаа_Зураг 2
SQL Server дээрх бүх холбоо ба нэгдлийн хоорондох ялгаа Зураг 3
SQL Server дээрх бүх холбоо ба нэгдлийн хоорондох ялгаа Зураг 3

Эхний хүснэгт s1, хоёр дахь хүснэгт s2. Холбоог гүйцэтгэх SQL хэллэг дараах байдалтай байна.

s1-ссонгох

эвлэл

s2-ссонгох;

Энэ нь дараах үр дүнгийн багцыг өгнө.

SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 4
SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 4

Энэ нь давхардсан мөргүй үр дүнгийн хүснэгтийг өгнө.

Union All in SQL Server гэж юу вэ?

Union all нь тохируулсан үйлдлийг гүйцэтгэх өөр SQL команд юм. Union-тэй адил энэ нь хоёр ба түүнээс дээш сонгогдсон мэдэгдлийн үр дүнг нэгтгэх болно. Мөн бүх үйл ажиллагаанд хамаарах хүснэгтүүдийн ижил тооны багана, ижил төрлийн өгөгдлийн төрлүүд байх шаардлагатай. Доорх хоёр хүснэгтээс харна уу.

SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 5
SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 5
SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 6
SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 6

Өмнө нь адил эхний хүснэгт s1, хоёр дахь хүснэгт s2 байна. Бүхнийг нэгтгэх мэдэгдэл дараах байдалтай байна.

s1-ссонгох

эвлэл бүгд

s2-ссонгох;

Энэ нь дараах үр дүнгийн багцыг өгнө.

SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 7
SQL Server дээрх нэгдэл ба нэгдэл хоёрын ялгаа Зураг 7

Энэ нь давхардсан мөр бүхий үр дүнгийн хүснэгтийг өгнө.

SQL Server дээрх Union болон Union All хоёрын ялгаа юу вэ?

Union нь давхардсан мөрүүдийг буцаахгүйгээр хоёр ба түүнээс дээш сонгогдсон мэдэгдлийн үр дүнг нэгтгэдэг SQL команд юм. Union All нь давхардсан мөр зэрэг хоёр ба түүнээс дээш сонгогдсон мэдэгдлийн үр дүнг нэгтгэсэн SQL команд юм. Энэ бол SQL сервер дэх нэгдэл ба эвлэлийн хоорондох гол ялгаа юм. Өөрөөр хэлбэл, union нь үүссэн өгөгдлийн багцыг давхардсан мөргүйгээр өгдөг. Нөгөө талаас, union all нь үр дүнгийн датасетийг давхардсан мөрүүдээр өгдөг.

Хүснэгт хэлбэрээр SQL Сервер дэх Холбоо ба Холбооны хоорондох ялгаа
Хүснэгт хэлбэрээр SQL Сервер дэх Холбоо ба Холбооны хоорондох ялгаа

Хураангуй – Union vs Union All in SQL Server

Энэ нийтлэлд нэгдэл болон нэгдэл гэсэн багц үйлдлүүдтэй холбоотой хоёр SQL командыг авч үзсэн. Бүх SQL серверийн нэгдэл ба union хоёрын ялгаа нь нэгдэл нь үүссэн өгөгдлийн багцыг давхардсан мөргүйгээр өгдөг бол union бүгд үр дүнд бий болсон өгөгдлийн багцыг давхардсан мөртэй өгдөг. SQL сервер нь эдгээр SQL командын тусламжтайгаар мэдэгдлийг гүйцэтгэдэг.

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