منابع بیشتر SQL
برگه راهنمای SQL ما را برای مبتدیان با نحوه فیلتر و تجمیع داده، مثالها، بهترین روشها و بیشتر دریافت کنید.
برگه راهنمای SQL
برگه راهنمای SQL ما را برای مبتدیان با نحوه فیلتر و تجمیع داده، مثالها، بهترین روشها و بیشتر دریافت کنید.

برگه راهنمای SQL برای مبتدیان
SQL را با این برگه راهنمای SQL دوستدار مبتدی یاد بگیرید. چه در حال کاوش داده در متابیس باشید، تمرین پرسوجوهای SQL، یا مرور اصول، این برگه راهنما همه دستورات ضروری SQL را به شما میدهد.
برای تیم داده، یک منبع عالی برای اشتراکگذاری با کاربران کسبوکار است تا متوجه شوند SQL فقط پرسیدن سؤال از پایگاه داده است و شروع به کشیدن داده خود بدون انتظار برای تیم شما کنند.
داده نمونه
ما از دو جدول در سراسر این برگه راهنما استفاده خواهیم کرد.
customers
| customer_id | customer_name | country |
|---|---|---|
| 1 | Alice | USA |
| 2 | Carlos | Mexico |
| 3 | Bob | Canada |
| 4 | Diana | France |
orders
| order_id | customer_id | amount | order_date |
|---|---|---|---|
| 101 | 1 | 250 | 2025-08-05 |
| 102 | 2 | 75 | 2025-08-06 |
| 103 | 3 | 120 | 2025-08-07 |
| 104 | 4 | 45 | 2025-08-08 |
دریافت داده
از SELECT و FROM برای انتخاب داده از یک جدول استفاده کنید.
دریافت همه ستونها از یک جدول
SELECT *
FROM customers;دریافت ستونهای خاص
SELECT customer_name
FROM orders;دریافت مقادیر یکتا از یک ستون
SELECT DISTINCT country
FROM customers;فیلتر کردن داده
از WHERE برای فیلتر ردیفها بر اساس شرطها استفاده کنید.
فیلتر ردیفهای بالاتر از مقدار مشخص
SELECT *
FROM orders
WHERE amount > 100;فیلتر ردیفهای مطابق با چند شرط
SELECT *
FROM orders
WHERE order_date > '2025-08-06'
AND amount > 100;فیلتر ردیفهای مطابق با هر یک از شرطها
SELECT *
FROM customers
WHERE country = 'USA'
OR country = 'Canada';فیلتر ردیفها بر اساس فهرست مقادیر
SELECT *
FROM customers
WHERE country IN ('USA', 'Canada');حذف ردیفها با مقادیر خاص
SELECT *
FROM customers
WHERE country NOT IN ('USA', 'Canada');فیلتر ردیفها در یک محدوده
SELECT *
FROM orders
WHERE amount BETWEEN 50 AND 200;فیلتر ردیفها بر اساس الگوهای متنی
SELECT *
FROM customers
WHERE customer_name LIKE 'A%';فیلتر ردیفها بر اساس تاریخ
SELECT *
FROM orders
WHERE order_date >= '2025-08-06';تجمیع داده
از COUNT، SUM، AVG، و GROUP BY برای خلاصه کردن داده استفاده کنید.
شمارش همه ردیفها
SELECT COUNT(*)
FROM orders;شمارش مقادیر یکتا
SELECT COUNT(DISTINCT customer_id)
FROM orders;محاسبه مجموع
SELECT SUM(amount)
FROM orders;محاسبه مقدار میانگین
SELECT AVG(amount)
FROM orders;گروهبندی ردیفها بر اساس یک ستون
SELECT country, COUNT(*)
FROM customers
GROUP BY country;گروهبندی ردیفها و محاسبه مجموعها
SELECT customer_id, SUM(amount)
FROM orders
GROUP BY customer_id;فیلتر نتایج گروهبندی شده
SELECT customer_id, SUM(amount)
FROM orders
GROUP BY customer_id
HAVING SUM(amount) > 100;استفاده از CASE برای منطق شرطی
SELECT order_id, amount,
CASE
WHEN amount > 100 THEN 'High'
ELSE 'Low'
END AS order_size
FROM orders;سازماندهی نتایج
نتایج را با ORDER BY مرتب کنید، آنها را با LIMIT محدود کنید.
مرتبسازی ردیفها به ترتیب صعودی
SELECT *
FROM orders
ORDER BY order_date;مرتبسازی ردیفها به ترتیب نزولی
SELECT *
FROM orders
ORDER BY amount DESC;محدود کردن تعداد ردیفهای برگردانده شده
SELECT *
FROM customers
LIMIT 3;مرتبسازی و برگرداندن فقط نتایج برتر
SELECT order_id, amount
FROM orders
ORDER BY amount DESC
LIMIT 3;مرتبسازی ردیفها بر اساس چند ستون
SELECT customer_name, country
FROM customers
ORDER BY country ASC, customer_name ASC;رد شدن از ردیفها با OFFSET
SELECT *
FROM orders
ORDER BY order_date
LIMIT 3 OFFSET 2;منابع بیشتر SQL
این برگه راهنما راهی عالی برای شروع SQL است، اما وقتی با اصول راحت شدید، ممکن است بخواهید تکنیکهای پیشرفتهتر را کاوش کنید و عمیقتر به تحلیل داده بپردازید. ما شما را در آنجا با مسیر یادگیری SQL خود پوشش دادهایم، که شامل مقالاتی مثل: