آموزش رایگان صفر تا صد اسکیوال (SQL) به زبان ساده
-
آشنایی با SQL
-
آشنایی با دستورات SQL
-
دستور SELECT در SQL
-
دستور SQL SELECT DISTINCT
-
فیلتر کردن دادهها با WHERE در SQL
-
دستور ORDER BY در SQL
-
عملگر AND در SQL چیست؟
-
اپراتور OR در SQL
-
اپراتور NOT در SQL
-
دستور INSERT INTO در SQL
-
مقدار NULL در SQL
-
دستور UPDATE در SQL – بهروزرسانی اطلاعات جدول
-
دستور DELETE در SQL
-
مفهوم TOP، LIMIT، FETCH FIRST یا ROWNUM در SQL
-
توابع تجمیعی در SQL
-
معرفی توابع ()MIN و ()MAX در SQL
-
تابع COUNT() در SQL
-
تابع SUM() در SQL
-
تابع ()AVG در SQL
-
عملگر LIKE در SQL
-
استفاده از Wildcards در SQL
-
دستور IN در SQL
-
دستور BETWEEN در SQL
-
آشنایی با Aliases در SQL
-
مفهوم SQL JOIN
-
مفهوم INNER JOIN در SQL
دستور SQL SELECT DISTINCT
دستور SELECT DISTINCT
در SQL برای انتخاب تنها مقادیر منحصر به فرد (مختلف) استفاده میشود. این دستور به شما کمک میکند تا از نمایش دادههای تکراری جلوگیری کنید.
مثال ساده
فرض کنید میخواهید همه کشورهایی که در جدول “Customers” (مشتریان) موجود است را به دست آورید و تنها کشورهای مختلف را نمایش دهید:
SELECT DISTINCT Country FROM Customers;
در این مثال، SQL تنها کشورهای مختلف را به شما نمایش میدهد و کشورهای تکراری را حذف میکند.
چرا از SELECT DISTINCT استفاده میکنیم؟
در هر جدول، یک ستون میتواند حاوی مقادیر تکراری زیادی باشد. در این صورت، اگر بخواهید فقط مقادیر مختلف آن ستون را ببینید، از دستور SELECT DISTINCT
استفاده میکنید.
مثال کاربردی
فرض کنید در جدول “Customers” چندین مشتری از یک کشور خاص مانند “آلمان” وجود دارد. اگر میخواهید فقط کشورهای مختلف را ببینید، از دستور SELECT DISTINCT
استفاده میکنید.
نحو (Syntax) دستور SELECT DISTINCT
برای استفاده از دستور SELECT DISTINCT
، باید آن را به این شکل بنویسید:
SELECT DISTINCT Country, CustomerName FROM Customers;
در اینجا:
column1, column2, ...
ستونهایی هستند که میخواهید دادههای منحصر به فرد آنها را نمایش دهید.table_name
نام جدول است که میخواهید از آن دادهها را انتخاب کنید.
مثال
اگر بخواهید کشورهای مختلف و نام مشتریها را از جدول “Customers” نمایش دهید:
SELECT DISTINCT Country, CustomerName FROM Customers;
مثال بدون استفاده از DISTINCT
اگر از دستور DISTINCT
استفاده نکنید، SQL تمامی مقادیر (حتی تکراری) را به شما نمایش میدهد.
مثال:
SELECT Country FROM Customers;
در این مثال، تمام کشورها بدون در نظر گرفتن تکراری بودنشان به شما نمایش داده میشوند.
استفاده از DISTINCT با COUNT
اگر میخواهید تعداد کشورهای مختلف را شمارش کنید، میتوانید از دستور COUNT
همراه با DISTINCT
استفاده کنید. این به شما تعداد مقادیر منحصر به فرد را میدهد.
مثال:
SELECT COUNT(DISTINCT Country) FROM Customers;
این دستور تعداد کشورهای مختلف را از جدول “Customers” به شما نشان میدهد.
نکته:
در پایگاه دادههای Microsoft Access، از دستور COUNT(DISTINCT column_name)
پشتیبانی نمیشود. در این صورت، باید از روش جایگزین استفاده کنید.
راهحل در MS Access:
SELECT Count(*) AS DistinctCountries
FROM (SELECT DISTINCT Country FROM Customers);
جمعبندی
- دستور
SELECT DISTINCT
به شما کمک میکند تا مقادیر منحصر به فرد را از یک ستون انتخاب کنید. - این دستور از تکرار دادهها جلوگیری میکند و فقط مقادیر متفاوت را نمایش میدهد.
- برای شمارش تعداد مقادیر منحصر به فرد از
COUNT(DISTINCT column_name)
استفاده کنید.
تمرین
شما جدول “Customers” را دارید. دستور SQL ای بنویسید که تنها نامهای مشتریهای مختلف را از این جدول به دست آورد.