۱۲ آذر ۱۳۹۶ آموزش کاربردی۱ نظر
آموزش SQL

زبان پرس و جوی SQL به عنوان رایج ترین زبان رابطه ای به شمار می رود. نسخه ی اولیه ی آن در اوایل دهه هفتاد میلادی توسط شرکت IBM ارائه شد. برای ورود به بحث دستورات زبان SQL لازم است مقدماتی در خصوص ویژگی های این زبان توصیفی و انواع دستورات آن بدانید.

ویژگی های زبان SQL

زبان SQL یک زبان توصیفی است؛ برخلاف زبان های برنامه نویسی که رویه ای هستند و راه و مراحل رسیدن به جواب مورد تاکید قرار می گیرد، این زبان به توصیف خود جواب می پردازد نه مراحل رسیدن به جواب.

زبان SQL بر اساس تئوری جبر رابطه ای طراحی و پیاده سازی شده است و اکثریت عملگرهای جبر رابطه ای را به صورت مستقیم پوشش می دهد. برای مثال عملگر تقسیم به صورت مستقیم در این زبان پیاده سازی نشده است.

ماموریت اصلی SQL توصیف پرس و جو ها است. به طور معمول در طراحی و پیاده سازی سامانه های نرم افزاری در ترکیب با زبان های برنامه نویسی دیگر مورد استفاده قرار می گیرد.

انواع دستورات در زبان SQL

DDL

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

DML

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

Embedded SQL and Dynamic SQL

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

Integrity

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

Authorization

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

Transaction control

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

View definition

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

آموزش دستور Select در SQL

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

کوئری نویسی به شما کمک میکند تا تغییرات و گزارش هایی که میخواهید بر روی داده هایتان داشته باشید را انجام دهید.

یکی از اصلی ترین موارد در کوئری نویسی دستور Select می باشد. از آنجایی که SQL برای تحلیل داده هاست و کلا با داده و دیتا سر و کار دارد، استفاده از Select برای پیدا کردن داده ای که مورد نیاز ما می باشد بسیار مهم و ارزشمند است.

شما با استفاده از SQL هر نوع داده ای را که نیاز داشته باشید میتوانید استخراج کنید و از آن خروجی بگیرید. استفاده از select  بسیار گسترده می باشد و شما با دستورهای متفاوت میتوانید محدوده ی داده ی مورد نظر خود را انتخاب کنید.

اگر دستور Select را به درستی یاد بگیرید بخش عمده ای از SQL را فرا گرفته اید.

در این بخش شما را با دستور Select آشنا میکنیم اما پیشنهاد میکنیم برای یادگیری کامل آن بخش ها بعدی را نیز دنبال کنید، چرا که Select  نکات زیادی دارد و در هر بخش بنا به موضوع به نکاتی اشاره میکنیم که ممکن است در مباحث قبلی به آن توجه نشده باشد.

در انتهای هر مبحث برای یادگیری بیشتر شما تمرین هایی را در اختیارتان قرار میدهیم که میتوانید جواب آن را در قسمت نظرات برای ما ارسال کنید. جواب شما بررسی می شود، اگر جواب درست داده باشید که یعنی آن مبحث را درست و کامل متوجه شده اید و اگر نیاز به کمک داشته باشید شما را تا زمانی که نیاز به کمک دارید یاری میکنیم. پس در قسمت نظرات هر سوالی که دارید از ما بپرسید 🙂

شکل کلی دستور SELECT

… , select column name , column name

from table name

column name نام ستونی می باشد که شما میخواهید از آن داده هایتان را بخوانید. به طور مثال شما جدولی دارید با نام  employee. این جدول شما میتواند ستون های زیادی داشته باشد. مانند Employee ID (شناسه کارمندی) , Employee name (نام کارمند) , Age (سن کارمند) , Country (کشور کارمند) و خیلی ستون های دیگر….

هر کدام از این ستون ها مقادیری را شامل می شوند. به طور مثال شناسه کارمندی که مختص به هر کارمند می باشد میتواند از ۱ شروع شود و به تعداد کارمندان شما ادامه داشته باشد.(معمولا شناسه کارمندی unique  می باشد، در قسمت تعریف جداول این موضوع را به شما آموزش می دهیم اما فعلا در این حد بدانید که در هر جدول می توانید هرقدر خواستید ستون unique  تعریف کنید. ستون unique در sql  با نام primary key شناخته می شود. ستونی که primary key تعریف می شود یعنی نمیتواند مقدار تکراری بپذیرد . ترجیحا در هر جدول یک primary key  داشته باشید) . ستون بعدی که نام کارمندان است شامل اسامی کارمندان شما می باشد (این ستون primary key نیست، چون که نام کارمندان میتواند تکراری باشد. یعنی در یک سازمان میتوانیم دو پری ناز بنی اسدی داشته باشیم!). و مابقی ستون ها هم به همین منوال مقدار می پذیرند.

پس شما اگر ستون age را رو به روی select بنویسید و نام جدولتان را هم employee انتخاب کنید، یعنی از جدول employee ستون Age را می خواهید.

Select age

from employee

حال اگر بخواهید تمامی ستون های جدول employee را داشته باشید می توانید به جای نام ستون * بگذارید. یعنی:

 * select

from employee

راهنمایی: برای یادگیری بهتر SQL  باید تمرین زیادی انجام بدهید. برای این کار باید یک دیتابیس داشته باشید که شامل جداول و داده های زیادی باشد. برای شما جدول Northwind  که یکی از معروف ترین دیتابیس های تمرینی می باشد را اینجا برایتان می گذاریم ← دانلود

این جدول را دانلود کنید. وقتی نرم افزار SQLتان را باز کردید بر روی این فایل دو بار کلیک کنید. پنجره ای برای شما باز می شود که تا آن را اجرا نکنید جداول به دیتابیس های شما اضافه نمی شود. ( اجرا کردن کوئری ها در SQL با کلید f5 انجام میشود و یا در منوی بالای برنامه گزینه Execute را بزنید).

SQL , آموزش SQL , آموزش کوئری نویسی , آموزش query نویسی , آموزش select , دستور select , آموزش دستور select

چند لحظه صبر کنید تا پیام Command(s) completed successfully را ببینید. حالا در قسمت Databases یک راست کلیک کنید و refresh را بزنید. دیگه میتونید دیتابیس Nortwind رو ببینید.

حالا تمرین هایی که به یادگیری شما کمک میکند را انجام دهید و ترجیحا برای ما در قسمت نظرات آن ها را بنویسید.

تمرین ۱) از جدول مشتریان ستون CustomerId را پیدا کنید.

تمرین ۲) از جدول Order، ستون های OrderId و OrderDate را پیدا کنید.

تمرین ۳) تمام ستون های جدول products را پیدا کنید.

0 0 آرا
رتبه بندی متن
اشتراک در
اطلاع از
guest
1 دیدگاه
قدیمی ترین
جدیدترین رای بیشتر
بازخورد درون خطی
مشاهده همه نظرات
eli
eli
3 سال پیش

سلام وقت بخیر
اصلا لینک ها کار نمیکنن ، بطور مثال اومدم جدول northwind رو دانلود کنم اصلا لینک دانلود کار نکرد