معرفی SQL
SQL چیست، چه نقشی در دنیای فناوری دارد و چرا زبان استاندارد کار با پایگاههای داده است؟
SQL چیست؟
SQL (مخفف Structured Query Language یا «زبان پرسوجوی ساختاریافته») زبان استاندارد برای ذخیره، بازیابی و مدیریت دادهها در پایگاههای داده رابطهای (Relational Databases) است.
اگر میخواهید با دادهها کار کنید — چه در توسعه وب، چه در تحلیل داده، چه در هوش مصنوعی — SQL مهارتی ضروری است. تقریباً هر برنامهای که دادهای ذخیره میکند، از SQL استفاده میکند.
SQL چه کاری انجام میدهد؟
- ایجاد پایگاه داده و جداول جدید
- خواندن و بازیابی دادهها (Query)
- بهروزرسانی دادههای موجود
- حذف دادهها
- مدیریت دسترسیها و امنیت دادهها
چرا SQL یاد بگیریم؟
| دلیل | توضیح |
|---|---|
| استاندارد جهانی | تقریباً همه پایگاههای داده از SQL پشتیبانی میکنند |
| بازار کار عالی | تقاضای بالا برای متخصصان SQL در همه صنایع |
| سادگی | سینتکس SQL شبیه زبان انگلیسی و یادگیری آن آسان است |
| قدرت بالا | میتواند با میلیونها رکورد بهسرعت کار کند |
| کاربرد گسترده | وب، تحلیل داده، گزارشگیری، هوش تجاری و... |
پایگاههای داده محبوب که از SQL استفاده میکنند
| پایگاه داده | توضیح | کاربرد |
|---|---|---|
| MySQL | محبوبترین پایگاه داده متنباز | وبسایتها، وردپرس |
| PostgreSQL | قدرتمند و پیشرفته | برنامههای بزرگ |
| SQLite | سبک، بدون سرور، تکفایلی | موبایل، آزمایشگاه ما! |
| SQL Server | محصول مایکروسافت | برنامههای سازمانی |
| Oracle | قدرتمندترین پایگاه داده تجاری | بانکها، سازمانهای بزرگ |
SQL یک زبان استاندارد است — اما...
اگرچه SQL استاندارد است، اما هر پایگاه داده لهجه (Dialect) خاص خودش را دارد. مثلاً MySQL کمی با PostgreSQL تفاوت دارد. اما ۹۰٪ دستورات مشترک هستند و وقتی SQL را یاد بگیرید، میتوانید با هر پایگاه دادهای کار کنید.
دستهبندی دستورات SQL
| دسته | نام | کاربرد | مثال |
|---|---|---|---|
| DQL | Data Query Language | خواندن داده | SELECT |
| DML | Data Manipulation Language | تغییر داده | INSERT, UPDATE, DELETE |
| DDL | Data Definition Language | ساختار جدول | CREATE, ALTER, DROP |
| DCL | Data Control Language | دسترسیها | GRANT, REVOKE |
یک نمونه کوئری SQL
برای اینکه سادگی SQL را حس کنید، به این کوئری نگاه کنید:
SELECT name, age FROM students WHERE age > 18 ORDER BY name;
این کوئری میگوید: «انتخاب کن نام و سن را از جدول دانشآموزان که سنشان بیشتر از ۱۸ است، مرتبشده بر اساس نام.» تقریباً مثل یک جمله انگلیسی!
پایگاه داده رابطهای چیست؟
در یک پایگاه داده رابطهای، دادهها در جداول (Tables) ذخیره میشوند. هر جدول شبیه یک صفحه اکسل است:
- هر ردیف (Row) یک رکورد کامل است (مثلاً یک دانشآموز)
- هر ستون (Column) یک ویژگی است (مثلاً نام، سن، نمره)
- جداول میتوانند با هم رابطه (Relation) داشته باشند
در این دوره چه چیزی یاد میگیرید؟
- مبانی SQL: SELECT، WHERE، ORDER BY
- دستورات تغییر داده: INSERT، UPDATE، DELETE
- توابع تجمیعی: COUNT، SUM، AVG، MIN، MAX
- گروهبندی و فیلتر: GROUP BY، HAVING
- جوینها: INNER، LEFT، RIGHT، FULL JOIN
- تعریف جداول: CREATE، ALTER، DROP
- محدودیتها: PRIMARY KEY، FOREIGN KEY، UNIQUE
- مباحث پیشرفته: View، Subquery، UNION
آمادهاید؟ بریم شروع کنیم! 🚀
این مبحث بخشی از دوره آموزش کامل SQL است.