خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
شمارش یک مقدار خاص از بین ستون ها در یک جدول از دیتابیس در SQL Server
پیشتر در خصوص تابع Count در SQL Server مقالاتی را منتشر کردیم که در این خصوص می توانید به لینک های زیر مراجعه کنید. اما موضوعی که در این پست به بررسی آن خواهیم نشست ، شمارش یک مقدار خاص از بین Column ها یا ستون ها را در یک جدول خاص مورد استفاده قرار خواهیم داد. جلوتر موضوع برای شما شفاف تر و بازتر خواهد شد.
استفاده از تابع ()COUNT_BIG در SQL Server
نحوه استفاده از تابع COUNT در SQL SERVER
(*)Count یا (1)Count یا (")Count یا (نام ستون)Count - استفاده از کدام یک بهتر است؟
استفاده از شرط در تابع COUNT در SQL Server
لطفا به Sample زیر دقت کنید:
مثلا ما می خواهیم تعداد 1 ها را شناسایی کرده و بشماریم. از آنجا که مثال ما خیلی ساده است با یک نگاه ساده متوجه خواهید شد که تعداد 1 ها برابر با 7 است. حالا همین را از طریق کوئری در SQL انجام خواهیم داد. ابتدا یک جدول ایجاد می کنیم و مقادیری که در مثال فوق دیدید را بدان اضافه می کنیم.
اکنون اجازه دهید دو روش مختلف را بررسی کنیم که مقدار 1 را در جدول محاسبه کرده و مقدار مورد نظر که 7 است را تولید و نمایش می دهد.
در مثال اول از شرط CASE استفاده خواهیم کرد:
و در روش دوم از تابع UNION ALL استفاده خواهیم کرد:
هر دو روش فوق، نتیجه مطلوب که 7 است را تولید و نمایش می دهد. اگر روش های دیگری را هم شما می شناسید لطفا در قسمت ثبت نظرات آنرا با ما و سایر دوستانتان در وب سایت به اشتراک قرار دهید.
آموزش پایگاه داده اس کیو ال سرور به زبان ساده از مبتدی تا پیشرفته بصورت کاملا کاربردی
دوره آموزش برنامه نویسی بانکهای اطلاعاتی VB.NET + SQL Server
استفاده از تابع ()COUNT_BIG در SQL Server
نحوه استفاده از تابع COUNT در SQL SERVER
(*)Count یا (1)Count یا (")Count یا (نام ستون)Count - استفاده از کدام یک بهتر است؟
استفاده از شرط در تابع COUNT در SQL Server
لطفا به Sample زیر دقت کنید:
Col1 Col2 Col3
----------- ----------- -----------
1 1 1
1 2 1
1 1 3
مثلا ما می خواهیم تعداد 1 ها را شناسایی کرده و بشماریم. از آنجا که مثال ما خیلی ساده است با یک نگاه ساده متوجه خواهید شد که تعداد 1 ها برابر با 7 است. حالا همین را از طریق کوئری در SQL انجام خواهیم داد. ابتدا یک جدول ایجاد می کنیم و مقادیری که در مثال فوق دیدید را بدان اضافه می کنیم.
USE TEMPDB GO
CREATE TABLE #TEST
(
COL1 INT,
COL2 INT,
COL3 INT
);
INSERT INTO #TEST(COL1,COL2,COL3)
SELECT 1, 1, 1 UNION ALL
SELECT 1, 2, 1 UNION ALL
SELECT 1, 1, 3
اکنون اجازه دهید دو روش مختلف را بررسی کنیم که مقدار 1 را در جدول محاسبه کرده و مقدار مورد نظر که 7 است را تولید و نمایش می دهد.
در مثال اول از شرط CASE استفاده خواهیم کرد:
SELECT
SUM
(
CASE WHEN COL1=1 THEN 1 ELSE 0 END +
CASE WHEN COL2=1 THEN 1 ELSE 0 END +
CASE WHEN COL3=1 THEN 1 ELSE 0 END
) AS COUNTS
FROM #TEST
و در روش دوم از تابع UNION ALL استفاده خواهیم کرد:
SELECT
COUNT(COL1) AS COUNTS FROM
(
SELECT COL1 FROM #TEST WHERE COL1=1
UNION ALL
SELECT COL2 FROM #TEST WHERE COL2=1
UNION ALL
SELECT COL3 FROM #TEST WHERE COL3=1
) AS T
هر دو روش فوق، نتیجه مطلوب که 7 است را تولید و نمایش می دهد. اگر روش های دیگری را هم شما می شناسید لطفا در قسمت ثبت نظرات آنرا با ما و سایر دوستانتان در وب سایت به اشتراک قرار دهید.
آموزش پایگاه داده اس کیو ال سرور به زبان ساده از مبتدی تا پیشرفته بصورت کاملا کاربردی
دوره آموزش برنامه نویسی بانکهای اطلاعاتی VB.NET + SQL Server
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: