پرشین تم مقالات آموزش دستور Select و ساب کوئری ها در SQL

آموزش دستور Select و ساب کوئری ها در SQL

image profile پرشین تم - 28 آذر 1403 - 01:58 دانلود مقاله

در این مقاله به دستورات SELECT، WHERE و subqueries SQL و همین طور عبارات Group bY,Order By و Having با ذکر مثال در Sql بپردازیم.

آموزش دستور Select و ساب کوئری ها در SQL

 

1. دستور SELECT:

دستور SELECT برای بازیابی داده ها از پایگاه داده استفاده می شود. مشخص می کند که کدام ستون ها را می خواهید از جدول مشخص شده بازیابی کنید.

نحو:

SELECT column1, column2, ...
FROM table_name;

مثال:

SELECT first_name, last_name
FROM employees;

این مثال ستون های first_name و last_name را از جدول کارکنان بازیابی می کند.

 

2. دستور WHERE:

از عبارت WHERE برای فیلتر کردن رکوردها استفاده می شود. فقط برای استخراج رکوردهایی استفاده می شود که یک شرط مشخص را برآورده می کنند.

نحو:

SELECT column1, column2, ...
FROM table_name
WHERE condition;

مثال:

SELECT first_name, last_name
FROM employees
WHERE department = 'HR';

این مثال ستون های first_name و last_name را از جدول کارکنان که در آن بخش 'HR' است بازیابی می کند.

 

3. پرس و جوی فرعی:

یک پرس و جو فرعی یک پرس و جو در پرس و جوی دیگر است. برای انجام عملیاتی که به چندین مرحله نیاز دارند یا برای فیلتر کردن رکوردها بر اساس مجموعه دیگری از معیارها استفاده می شود.

نحو:

SELECT column1, column2, ...
FROM table_name
WHERE column_name IN (SELECT column_name FROM another_table WHERE condition);

مثال:

SELECT first_name, last_name
FROM employees
WHERE department_id IN (SELECT department_id FROM departments WHERE location = 'New York');

این مثال ستون‌های first_name و last_name را از جدول کارکنان بازیابی می‌کند که در آن Department_id با هر بخش واقع در «نیویورک» مطابقت دارد.

 

ترکیب SELECT، WHERE و Subqueries

می توانید این دستورات را برای ایجاد پرس و جوهای پیچیده ترکیب کنید. به عنوان مثال:

SELECT first_name, last_name
FROM employees
WHERE salary > (SELECT AVG(salary) FROM employees);

این پرس و جو نام و نام خانوادگی کارمندانی را بازیابی می کند که حقوق آنها از میانگین حقوق همه کارمندان بیشتر است.

 

4. دستور GROUP BY:

دستور GROUP BY برای مرتب کردن داده های یکسان در گروه ها استفاده می شود. این اغلب با توابع انبوه (مانند COUNT، SUM، AVG و غیره) برای انجام محاسبات روی هر گروه از داده ها استفاده می شود.

نحو:

SELECT column1, aggregate_function(column2)
FROM table_name
GROUP BY column1;

مثال:

SELECT department, COUNT(*)
FROM employees
GROUP BY department;

این مثال کارمندان را بر اساس بخش گروه بندی می کند و تعداد کارمندان هر بخش را می شمارد.

 

5. دستور ORDER BY:

عبارت ORDER BY برای مرتب کردن نتایج به ترتیب صعودی یا نزولی استفاده می شود. ترتیب مرتب سازی پیش فرض صعودی است.

نحو:

SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC|DESC];

مثال:

SELECT first_name, last_name, salary
FROM employees
ORDER BY salary DESC;

این مثال جدول کارکنان را بر اساس ستون حقوق و دستمزد به ترتیب نزولی مرتب می کند.

 

6. دستور HAVING:

عبارت HAVING برای فیلتر کردن رکوردهایی که با GROUP BY کار می کنند استفاده می شود. شبیه عبارت WHERE است اما برای توابع جمع استفاده می شود.

نحو:

SELECT column1, aggregate_function(column2)
FROM table_name
GROUP BY column1
HAVING condition;

مثال:

SELECT department, COUNT(*)
FROM employees
GROUP BY department
HAVING COUNT(*) > 10;

این مثال کارمندان را بر اساس بخش گروه بندی می کند و فقط بخش هایی را شامل می شود که بیش از 10 کارمند دارند.

 

ترکیب GROUP BY، ORDER BY و HAVING

شما می توانید این دستورات را برای ایجاد پرس و جوهای قدرتمند ترکیب کنید. به عنوان مثال:

SELECT department, AVG(salary)
FROM employees
GROUP BY department
HAVING AVG(salary) > 50000
ORDER BY AVG(salary) DESC;

این پرس و جو کارمندان را بر اساس بخش گروه بندی می کند، متوسط ​​حقوق هر بخش را محاسبه می کند، بخش هایی با حقوق متوسط ​​50000 یا کمتر را فیلتر می کند و نتایج مجموعه را به ترتیب نزولی میانگین حقوق مرتب می کند.

 

نکات کلیدی:

  • SELECT: ستون های خاصی را از یک جدول بازیابی می کند.
  • WHERE: رکوردها را بر اساس شرایط مشخص شده فیلتر می کند.
  • Subqueries: به پرس و جوهای درون پرس و جو برای انجام عملیات پیچیده اجازه می دهد.
  • GROUP BY: ردیف هایی را که مقادیر یکسانی در ستون های مشخص شده دارند در ردیف های خلاصه گروه بندی می کند.
  • ORDER BY: نتایج تنظیم شده توسط ستون های مشخص شده را به ترتیب صعودی یا نزولی مرتب می کند.
  • HAVING: گروه ها را بر اساس توابع انبوه، مشابه WHERE اما برای رکوردهای گروه بندی شده فیلتر می کند.

 

این دستورات برای ایجاد پرس و جوهای پایگاه داده سازمان یافته و روشنگر ضروری هستند.

با خرید اشتراک می توانید تا چندین برابر مبلغ خرید اشتراک خود قالب های HTML ، سورس کدهای آماده و یا مقالات دانلود کنید
شما می توانید تنها فقط با مبلغ 3,000,000 میلیون تومان وب سایت سفارسی برای خود داشته باشید
محبوب ترین مقالات
تفاوت بین CSS و SCSS چیست؟ تفاوت بین CSS و SCSS چیست؟
category برنامه نویسی 07 اسفند 1402
تفاوت بین RDBMS و DBMS تفاوت بین RDBMS و DBMS
category برنامه نویسی 02 فروردین 1403
کاوش در معماری GPT-3 کاوش در معماری GPT-3
category هوش مصنوعی 12 اسفند 1402
کلمات کلیدی در SQL کلمات کلیدی در SQL
category برنامه نویسی 01 خرداد 1403
تفاوت بین CSS، SASS و SCSS چیست؟ تفاوت بین CSS، SASS و SCSS چیست؟
category برنامه نویسی 13 اسفند 1402
انواع Join در SQL انواع Join در SQL
category برنامه نویسی 02 فروردین 1403
ChatGPT چیست؟ ChatGPT چیست؟
category هوش مصنوعی 12 اسفند 1402
آخرین مقالات
آموزش معماری Bloc در فلاتر آموزش معماری Bloc در فلاتر معماری BLoC (مخفف Business Logic Component) یکی از محبوب‌ترین معماری‌ها در فلاتر برای مدیریت وضعیت (state management) ...
category برنامه نویسی 09 مهر 1404
میکروسرویس چیست؟ مثال عملی در Asp Core میکروسرویس چیست؟ مثال عملی در Asp Core میکروسرویس‌ها (Microservices) یک سبک معماری نرم‌افزاری هستند که در آن سیستم بزرگ به مجموعه‌ای از سرویس‌های کوچک، مستقل...
category برنامه نویسی 09 مهر 1404
Redis چیست؟ آموزش استفاده از آن در asp core Redis چیست؟ آموزش استفاده از آن در asp core Redis یک مخزن داده با عملکرد بالا و کلید-مقدار در حافظه است که اغلب برای ذخیره‌سازی موقت (caching)، مدیریت جلسه (sessi...
category برنامه نویسی 27 شهریور 1404