خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


نمایش خروجی تابع Distinct به همراه تابع EXCEPT در SQL Server

نمایش خروجی تابع Distinct به همراه تابع EXCEPT در SQL Server
پیشتر در خصوص تابع UNION بصورت جداگانه در مقالاتی صحبت کردیم. در این مطلب همچنان از این تابع قصد داریم استفاده کنیم ولی این بار از تابع دیگری با نام EXCEPT به همراه UNION استفاده می کنمی که در Result set مربوط به UNION تاثیر خواهد گذاشت.

نرم افزار سامانه مودیان راهکار





برای شروع، یک جدول ایجاد می کنمی و مقادیری را در آن Insert می کنمی که برخی مقادیر تکراری هستند.

USE TEMPDB
GO
CREATE TABLE DuplicateRcordTable (Col1 INT, Col2 INT)
INSERT INTO DuplicateRcordTable
SELECT 1, 1
UNION ALL
SELECT 1, 1 --duplicate
UNION ALL
SELECT 1, 1 --duplicate
UNION ALL
SELECT 1, 2
UNION ALL
SELECT 1, 2 --duplicate
UNION ALL
SELECT 1, 3
UNION ALL
SELECT 1, 4
GO

حالا با اجرای کوئری زیر، رکوردهای جدول را Select می کنیم که خروجی شامل 7 رکورد است.

SELECT col1,col2
FROM DuplicateRcordTable

نمایش خروجی تابع Distinct به همراه تابع EXCEPT در SQL Server
حالا برای حذف رکوردهای تکراری، از همان جدول استفاده می کنیم و از تابع EXCEPT همراه با یک Result set خالی استفاده کنید که توسط همان جدول به شکل زیر بازگردانده شده است.

SELECT col1,col2
FROM DuplicateRcordTable
EXCEPT
SELECT col1,col2
FROM DuplicateRcordTable WHERE 1=0

نمایش خروجی تابع Distinct به همراه تابع EXCEPT در SQL Server
قسمت دوم از کوئری EXCEPT از شرط ساختگی WHERE 1 = 0 برای بازگشت Result set خالی استفاده می کند. این Result set خالی با قسمت اول ezcept ترکیب می شود و تایع EXCEPT به سادگی با حذف رکوردهای result set دوم (که در این حالت خالی است) Result یا خروجی distinct را بر می گرداند.
اگر ترفندهای دیگری برای حذف مقادیر تکراری می شناسید بسیار خوشحال خواهیم شد که آن را با ما و سایر دوستانتان در وب سایت در قسمت ثبت نظرات و دیدگاه ها به اشتراک قرار دهید.


نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز