تخفیف تابستانی تا 35 درصد روی تمام دوره ها
روز
ساعت
دقیقه
ثانیه

برگه تقلب SQL

برگه تقلب SQL
آنچه می خوانید:

SQL که با نام Structured Query Language نیز شناخته می‌شود، ابزاری قدرتمند برای جست‌وجو در حجم عظیمی از داده‌ها و بازگرداندن اطلاعات خاص جهت تحلیل است. یادگیری SQL برای هر کسی که مشتاق تبدیل شدن به یک تحلیل‌گر داده، مهندس داده یا دانشمند داده است، حیاتی بوده و در بسیاری از زمینه‌های دیگر مانند توسعه وب یا بازاریابی نیز بسیار مفید است. در این برگه تقلب SQL، لیستی کاربردی از توابع شامل پرس‌وجوی داده‌ها، فیلتر کردن داده‌ها، تجمیع و موارد دیگر را خواهید یافت.

برای تقویت مهارت‌های داده‌ای خود، ممکن است دوره‌هایی مانند آموزش علم داده و یادگیری ماشین با پایتون برایتان مفید باشد. ضمنا این برگه تقلب SQL را همیشه در دسترس داشته باشید

برگه تقلب SQL

 

گویش‌های مختلف SQL

اگرچه تمام زبان‌های SQL دارای ساختار پایه‌ای مشترکی هستند، اما برخی دستورات و سبک‌های خاص در آن‌ها ممکن است کمی متفاوت باشد. گویش‌های محبوب شامل MySQL، SQLite، SQL Server، Oracle SQL و موارد دیگر می‌شوند. PostgreSQL نقطه شروع خوبی برای یادگیری است؛ زیرا به سینتکس استاندارد SQL بسیار نزدیک است و به راحتی می‌توان آن را در سایر گویش‌ها نیز به کار گرفت.

برای یادگیری SQL در کنار برنامه نویسی پایتون از آموزش پایتون از صفر تا صد، PyQt6، دیتابیس، git استفاده کنید.

 

داده‌های نمونه

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

id city country number_of_rooms year_listed
1 Paris France 5 2018
2 Tokyo Japan 2 2017
3 New York USA 2 2022

 

پرس‌وجو از جداول

دریافت تمام ستون‌ها از یک جدول

SELECT *  FROM airbnb_listings;

بازگرداندن ستون city از جدول

SELECT city  FROM airbnb_listings;

دریافت ستون‌های city و year_listed از جدول

SELECT city, year_listed FROM airbnb_listings;

دریافت id آگهی و city، مرتب‌شده بر اساس number_of_rooms به صورت صعودی

SELECT city, year_listed  FROM airbnb_listings  ORDER BY number_of_rooms ASC;

دریافت id آگهی و city، مرتب‌شده بر اساس number_of_rooms به صورت نزولی

SELECT city, year_listed  FROM airbnb_listings  ORDER BY number_of_rooms DESC;

دریافت ۵ ردیف اول از airbnb_listings

SELECT *  FROM airbnb_listings LIMIT 5;

دریافت لیستی یکتا از شهرهایی که در آن‌ها آگهی وجود دارد

SELECT DISTINCT city FROM airbnb_listings;

 

فیلتر کردن بر اساس ستون‌های عددی

دریافت تمام آگهی‌هایی که در آن‌ها number_of_rooms بزرگتر یا مساوی ۳ است

SELECT * FROM airbnb_listings  WHERE number_of_rooms >= 3;

دریافت تمام آگهی‌هایی که در آن‌ها number_of_rooms بزرگتر از ۳ است

SELECT * FROM airbnb_listings  WHERE number_of_rooms > 3;

دریافت تمام آگهی‌هایی که در آن‌ها number_of_rooms دقیقاً برابر با ۳ است

SELECT * FROM airbnb_listings  WHERE number_of_rooms = 3;

دریافت تمام آگهی‌هایی که در آن‌ها number_of_rooms کوچکتر یا مساوی ۳ است

SELECT * FROM airbnb_listings  WHERE number_of_rooms <= 3;

دریافت تمام آگهی‌هایی که در آن‌ها number_of_rooms کوچکتر از ۳ است

SELECT * FROM airbnb_listings  WHERE number_of_rooms < 3;

فیلتر کردن ستون‌ها در یک بازه مشخص—دریافت تمام آگهی‌هایی که بین ۳ تا ۶ اتاق دارند

SELECT * FROM airbnb_listings  WHERE number_of_rooms BETWEEN 3 AND 6;

 

فیلتر کردن بر اساس ستون‌های متنی

دریافت تمام آگهی‌هایی که در شهر ‘Paris’ قرار دارند

SELECT *  FROM airbnb_listings  WHERE city = 'Paris';

فیلتر کردن یک ستون بر اساس چندین شرط—دریافت آگهی‌های واقع در ‘USA’ و ‘France’

SELECT * FROM airbnb_listings  WHERE country IN ('USA', 'France');

دریافت تمام آگهی‌هایی که نام شهر آن‌ها با “j” شروع می‌شود و به “t” ختم نمی‌شود

SELECT *  FROM airbnb_listings  WHERE city LIKE 'j%' AND city NOT LIKE '%t';

 

فیلتر کردن بر اساس چندین ستون

دریافت تمام آگهی‌های “Paris” که در آن‌ها number_of_rooms بزرگتر از ۳ است

SELECT * FROM airbnb_listings  WHERE city = 'Paris' AND number_of_rooms > 3;

دریافت تمام آگهی‌های “Paris” یا آگهی‌هایی که پس از سال ۲۰۱۲ ثبت شده‌اند

SELECT *  FROM airbnb_listings WHERE city = 'Paris' OR year_listed > 2012;

 

فیلتر کردن بر اساس داده‌های مفقود

دریافت تمام آگهی‌هایی که در آن‌ها مقدار number_of_rooms مفقود است

SELECT * FROM airbnb_listings  WHERE number_of_rooms IS NULL;

دریافت تمام آگهی‌هایی که در آن‌ها مقدار number_of_rooms مفقود نیست

SELECT * FROM airbnb_listings  WHERE number_of_rooms IS NOT NULL;

 

محاسبات تجمیعی ساده

دریافت تعداد کل اتاق‌های موجود در تمامی آگهی‌ها

SELECT SUM(number_of_rooms)  FROM airbnb_listings;

دریافت میانگین تعداد اتاق‌ها به ازای هر آگهی در تمامی آگهی‌ها

SELECT AVG(number_of_rooms)  FROM airbnb_listings;

دریافت آگهی با بیشترین تعداد اتاق در بین تمامی آگهی‌ها

SELECT MAX(number_of_rooms)  FROM airbnb_listings;

دریافت آگهی با کمترین تعداد اتاق در بین تمامی آگهی‌ها

SELECT MIN(number_of_rooms)  FROM airbnb_listings;

 

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

دریافت تعداد کل اتاق‌ها به تفکیک هر کشور

SELECT country, SUM(number_of_rooms) FROM airbnb_listings GROUP BY country;

دریافت میانگین تعداد اتاق‌ها برای هر کشور

SELECT country, AVG(number_of_rooms) FROM airbnb_listings GROUP BY country;

دریافت آگهی با بیشترین تعداد اتاق در هر کشور

SELECT country, MAX(number_of_rooms) FROM airbnb_listings GROUP BY country;

دریافت آگهی با کمترین تعداد اتاق به تفکیک کشور

SELECT country, MIN(number_of_rooms) FROM airbnb_listings GROUP BY country;

دریافت میانگین تعداد اتاق‌ها به ازای هر آگهی برای هر کشور، مرتب‌شده به صورت صعودی

SELECT country, AVG(number_of_rooms) AS avg_rooms FROM airbnb_listings GROUP BY country ORDER BY avg_rooms ASC;

دریافت میانگین تعداد اتاق‌ها به ازای هر آگهی برای کشورهای Japan و USA

SELECT country, AVG(number_of_rooms) FROM airbnb_listings WHERE country IN ('USA', 'Japan'); GROUP BY country;

دریافت تعداد آگهی‌ها به تفکیک هر کشور

SELECT country, COUNT(id) AS number_of_listings FROM airbnb_listings GROUP BY country;

دریافت تمامی سال‌هایی که در آن‌ها بیش از ۱۰۰ آگهی در سال ثبت شده است

SELECT year_listed FROM airbnb_listings GROUP BY year_listed HAVING COUNT(id) > 100;

 

نتیجه‌گیری

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

 

سوالات متداول

کدام گویش SQL برای شروع یادگیری مناسب‌تر است؟

PostgreSQL بهترین گزینه برای یادگیری است، زیرا به استانداردهای جهانی SQL بسیار نزدیک است و یادگیری آن انتقال به سایر گویش‌ها مانند MySQL یا SQL Server را آسان می‌کند.

تفاوت بین دستور WHERE و HAVING در چیست؟

دستور WHERE برای فیلتر کردن ردیف‌ها قبل از گروه‌بندی استفاده می‌شود، در حالی که HAVING برای فیلتر کردن نتایج حاصل از گروه‌بندی و توابع تجمیعی (مانند SUM یا AVG) به کار می‌رود.

آیا برای یادگیری SQL نیاز به دانش برنامه‌نویسی قبلی داریم؟

خیر، SQL یک زبان اعلانی (Declarative) با ساختاری شبیه به زبان انگلیسی است و یادگیری آن برای مبتدیان، حتی بدون پیش‌زمینه برنامه‌نویسی، بسیار ساده و سریع است.

 

بیشتر بخوانید: سایر برگه‌ تقلب‌های دیتایاد

مقالات هوش مصنوعی
دوره جامع

هوش مصنوعی

دوره جامع نخبگان پایتون
دوره جامع متخصص علم داده
دوره جامع بینایی کامپیوتر و پردازش تصویر
دوره جامع مدل زبانی بزرگ و پردازش زبان طبیعی
قیمت اصلی: ۵۸,۰۰۰,۰۰۰ تومان بود.قیمت فعلی: ۳۷,۷۰۰,۰۰۰ تومان.
مقالات مشابه
نظرات

دیدگاهتان را بنویسید

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