درس هشتم – دستورات SQL – قسمت اول

بررسی دستور IN

این دستور اصولاً در یک شرط به کار گرفته می‌شود و مشخص می‎کند چه گزینه‌هایی باید در خروجی نمایش داده شود، شمای کلی دستور IN به‌صورت زیر است:

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, ...) ;

روش دیگری نیز برای به‌کارگیری دستور IN وجود دارد که شکل کلی آن به‌صورت زیر است:

SELECT column_name(s)
FROM table_name
WHERE column_name IN (SELECT STATEMENT);

مثال اول – بررسی دستور IN

SELECT * FROM Customers
WHERE City NOT IN ('London','Tehran') ;

در مثال بالا، ستون‌هایی در خروجی چاپ خواهد شد که دارای شهر‌های London و Tehran نباشند، چون پیش از دستور IN، دستور NOT به کار برده شده است و به‌ این دلیل شرط منفی خواهد شد در خروجی شکل ۴۰ -۳ این موضوع را مشاهده می‌کنید.

شکل ۴۰-۳  بررسی دستور IN

۳-۱-۵-۱۰ بررسی دستور TOP

این دستور برای نمایش تعداد سطر در خروجی کاربرد دارد که دارای گزینه‌های مختلفی است و شکل کلی آن را در زیر مشاهده می‌کنید:

SELECT TOP number|percent column_name(s)
FROM table_name
WHERE condition;

مثال اول – بررسی دستور TOP

SELECT TOP ۴ * FROM Customers;

در دستور بالا، ۴ سطر از جدول Customers به‌ مانند شکل ۴۱-۳ در خروجی چاپ خواهد شد.

شکل ۴۱-۳ بررسی دستور TOP

مثال دوم – استفاده از OFFSET

SELECT * FROM Customers

ORDER BY CustomerID

OFFSET ۲ ROWS;

برای استفاده از دستور OFFSET حتماً باید قبل از آن از دستور ORDER BY استفاده کنید تا ID مورد نظر منظم شود و بعد می‌توانید از دستور OFFSET استفاده کنید؛ توجه داشته باشید که این دستور از شماره‌ای که در مقابل آن نوشته می‌شود در جدول مورد نظر شماره‌های بعد از آن را در خروجی چاپ می‌کنند، مانند دستور بالا که شماره‌ی ۲ نوشته شده است، اما از شماره‌ی ۳ به بعد در خروجی چاپ خواهد شد، اگر به شکل ۴۲-۳ توجه کنید این موضوع را مشاهده می‌کنید؛ توجه داشته باشد که دستور ROWS به‌ ردیف‌ها اشاره دارد.

شکل ۴۲-۳   بررسی OFFSET

مثال سوم – استفاده از دستورات FETCH و PRESENT

SELECT * FROM Customers
ORDER BY CustomerID
OFFSET ۲ ROWS
FETCH FIRST ۳ ROWS ONLY;

این دستور از چند قسمت تشکیل شده است؛ در خط اول با دستور SELECT، جدول Customers انتخاب شده و در خط دوم، CustomerID با دستور ORDER BY مرتب می‌شود، بعد از مرتب شدن CustomerID با دستور OFFSET مشخص می‌کنیم که از سطر سوم به بعد در خروجی چاپ شود و در خط آخر نیز مشخص می‌کنیم که چند سطر در خروجی چاپ شود که این موضوع را در شکل ۴۳-۳ مشاهده می‌کنید.

شکل ۴۳-۳ بررسی دستور FETCH و PRESENT

مثال چهارم – استفاده از WHERE به همراه TOP

SELECT TOP ۳ * FROM Customers
WHERE Country='Germany';

در دستور بالا با استفاده از TOP تعداد خروجی کار مشخص شده است، یعنی اگر سطر مورد نظر کشورش Germany باشد در خروجی چاپ خواهد شد، اما تنها ۳ سطر آن چاپ خواهد شد و اگر بیشتر باشد، چاپ نخواهد شد که در شکل ۴۴-۳ این موضوع را مشاهده می‌کنید.

شکل ۴۴-۳ بررسی دستور TOP

۳-۱-۵-۱۱ بررسی دستور MIN and MAX

این دستور کمترین و بیشترین مقدار در یک ستون را برمی‌گرداند که در زیر شکل کلی آن را مشاهده می‌کنید:

MIN

SELECT MIN(column_name)
FROM table_name
WHERE condition;

MAX

SELECT MAX(column_name)
FROM table_name
WHERE condition;

مثال یک – دستور MIN & MAX

SELECT MIN(Price)
FROM Customers;
SELECT MAX(Price)
FROM Customers;

در دستور بالا، دو عدد MIN و MAX از ستون Price در خروجی چاپ خواهد شد که این موضوع را در شکل ۴۵-۳ مشاهده می‌کنید.

شکل ۴۵-۳  بررسی دستور MIN و MAX

نکته­ی مهم:

توجه کنید که ایجاد Query باید در مسیر درست انجام شود، اگر به‌مانند شکل ۴۶-۳ بر روی SQLSERVER کلیک راست کنید و گزینه‌ی New Query را انتخاب کنید و بعد دستورات بالا را در آن اجرا کنید با خطای شکل ۴۷-۳ مواجه خواهید شد که دلیل آن نیز این است که جدول Customers در زیرمجموعه­ی دیگری قرار دارد و حتماً باید بر روی دیتابیس مورد نظر این دستور را اجرا کنید.

شکل ۴۶-۳ ایجاد Query

شکل ۴۷-۳ بررسی دستور MIN و MAX

۳-۱-۵-۱۲ بررسی دستور COUNT،AVG  و  SUM

شکل کلی دستور Count به‌صورت زیر است:

SELECT COUNT(column_name)
FROM table_name
WHERE condition;

شکل کلی دستور AVG به‌صورت زیر است:

SELECT AVG(column_name)
FROM table_name
WHERE condition;                                               

شکل کلی دستور SUM به‌صورت زیر است:

SELECT SUM(column_name)
FROM table_name
WHERE condition;

برای هر یک از دستورات بالا، یک مثال را با هم بررسی می‌کنیم:

مثال اول – بررسی دستور Count

SELECT * From Customers;
SELECT COUNT(PRICE)
FROM Customers;

در خط اول، کل جدول Customers در خروجی چاپ خواهد شد و در خط بعدی با دستور COUNT، تعداد موجودی در ستون Price مشخص خواهد شد که در شکل ۴۸-۳ این موضوع را مشاهده می‌کنید؛ در قسمت دوم عدد ۸ نوشته شده است که تعداد موجودی در ستون Price است.

شکل ۴۸-۳  بررسی دستور COUNT

مثال دوم – بررسی دستور AVG

SELECT AVG(PRICE)
FROM Customers;

در دستور بالا، میانگین اعدادی ستون Price حساب شده است و در خروجی چاپ خواهد شد که این موضوع را در شکل ۴۹-۳ مشاهده می‌کنید، اگر توجه کنید با ماشین ‌حساب جمع کل ستون Price را محاسبه و تقسیم ‌بر ۸ کردیم که نتیجه‌ی آن عدد ۳۱ شده است.

شکل ۴۹-۳ بررسی دستور AVG

مثال سوم – بررسی دستور SUM

SELECT SUM(PRICE)
FROM Customers;

این دستور، کل ستون Price را جمع خواهد کرد که در شکل ۵۰-۳ این موضوع را مشاهده می‎کنید.

شکل ۵۰-۳  بررسی دستور SUM

کتاب‌های جدید

کتاب آموزشی CCNP ENARSI 300-410
زبان فارسی
۱۲۲۲ صفحه
نسخه PDF

کتاب آموزشی CCNA 200-301
زبان فارسی
۷۱۵ صفحه
نسخه PDF

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Scroll to Top