آموزش رایگان صفر تا صد اسکیوال (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
تابع COUNT() در SQL
تابع COUNT()
در SQL برای شمارش تعداد سطرهایی که با یک شرط خاص مطابقت دارند، استفاده میشود. این تابع به شما کمک میکند تا تعداد دادهها را در جدول یا ستونهای خاصی بدست بیاورید.
ساختار کلی تابع COUNT()
برای استفاده از COUNT()
، ساختار کلی به این صورت است:
SELECT COUNT(*)
FROM table_name;
در اینجا *
به معنای شمارش تمام سطرها است.
مثال ساده: شمارش تمام سطرها در جدول
فرض کنید شما یک جدول به نام Products
دارید و میخواهید تعداد تمام محصولات را بشمارید. اینگونه میتوانید از تابع COUNT()
استفاده کنید:
SELECT COUNT(*)
FROM Products;
شمارش تعداد سطرهای یک ستون خاص 📊
اگر بخواهید تعداد سطرها را برای یک ستون خاص شمارش کنید، میتوانید نام آن ستون را به جای *
قرار دهید. مثلاً:
SELECT COUNT(ProductName)
FROM Products;
در اینجا تعداد سطرهایی که ستون ProductName
مقدار NULL
ندارد، شمارش میشود. یعنی اگر در بعضی سطرها اسم محصول وجود نداشته باشد، آنها شمارش نمیشوند.
نکته: تفاوت بین COUNT(*)
و COUNT(column_name)
COUNT(*)
: تعداد تمام سطرها را میشمارد، حتی اگر ستونها خالی باشند.COUNT(column_name)
: فقط سطرهایی که مقدارNULL
ندارند را میشمارد.
اضافه کردن شرط با WHERE 🔍
شما میتوانید با اضافه کردن WHERE
شرطهای خاصی برای شمارش تعیین کنید. مثلاً، فرض کنید میخواهید تعداد محصولاتی که قیمتشان بیشتر از 20 است را بشمارید:
SELECT COUNT(ProductID)
FROM Products
WHERE Price > 20;
نادیده گرفتن مقادیر تکراری با DISTINCT 🔄
اگر بخواهید مقادیر تکراری یک ستون را نادیده بگیرید و فقط مقادیر منحصر به فرد شمارش شوند، میتوانید از DISTINCT
استفاده کنید. برای مثال، اگر بخواهید تعداد قیمتهای مختلف محصولات را شمارش کنید، میتوانید از کد زیر استفاده کنید:
SELECT COUNT(DISTINCT Price)
FROM Products;
این کد تنها قیمتهای منحصر به فرد محصولات را شمارش میکند و قیمتهای تکراری را نادیده میگیرد.
استفاده از Alias برای نامگذاری نتایج 📑
شما میتوانید برای نتایج شمارش، یک نام (Alias) تعیین کنید تا خواناتر باشد. برای مثال، اگر بخواهید تعداد سطرها را با نام “Number of records” نمایش دهید، میتوانید اینطور عمل کنید:
SELECT COUNT(*) AS [Number of records]
FROM Products;
استفاده از COUNT() با GROUP BY 📊
اگر بخواهید تعداد سطرها را بر اساس یک دستهبندی خاص بشمارید، میتوانید از GROUP BY
استفاده کنید. مثلاً اگر میخواهید تعداد محصولات را برای هر دستهبندی (Category) شمارش کنید، این کد را استفاده کنید:
SELECT COUNT(*) AS [Number of records], CategoryID
FROM Products
GROUP BY CategoryID;
در اینجا تعداد محصولات برای هر دستهبندی شمارش میشود.
تمرین عملی 🚀
تمرین 1: تعداد محصولات با قیمت کمتر از 15 را شمارش کنید.
تمرین 2: تعداد دستهبندیهای مختلف در جدول محصولات را شمارش کنید.
تمرین 3: تعداد محصولاتی که نامشان از کلمه “Syrup” در نامشان استفاده میکنند را پیدا کنید.
نکات مهم:
- استفاده از
COUNT(*)
همه سطرها را میشمارد. - استفاده از
COUNT(column_name)
تنها سطرهایی را میشمارد که مقدارNULL
نداشته باشند. - با استفاده از
DISTINCT
میتوانید مقادیر تکراری را نادیده بگیرید. GROUP BY
به شما کمک میکند که تعداد سطرها را بر اساس یک گروه خاص شمارش کنید.