خانه SQL Server پرس و جوهای SQL در SQL Server (راهنمای مبتدیان) SQL Server دستورات SQL نوشته شده توسط: تیم فنی نیک آموز تاریخ انتشار: ۱۱ اسفند ۱۴۰۰ آخرین بروزرسانی: ۱۵ مهر ۱۴۰۲ زمان مطالعه: 6 دقیقه ۳ (۲) معرفی ایجاد SQL Queries یک فرایند ساده است. این مقاله در SQL Server ساخته شده است، اما بیشتر محتوا را میتوان با تغییرات اندک در پایگاهدادههای Oracle، PostgreSQL، MySQL، MariaDB و دیگر موارد اعمال کرد. پرس و جوهای SQL به ما این امکان را میدهند که پرس و جوها را به پایگاهداده ارسال کنیم. در این مقاله، یک آموزش سریع و کاربردی در مورد انجام پرسوجوها از ابتدا خواهیم داشت. پرس و جوهای SQL چیست؟ SQL مخفف Structured Query Language است. این زبانی است که توسط پایگاههای داده برای دریافت اطلاعات استفاده میشود. ما یاد خواهیم گرفت که چگونه با استفاده از زبان SQL پرسوجو کنیم. پرسوجوهای SQL در SQL Server اساس یک پرسوجو در SQL Server جمله SELECT است که اجازه میدهد تا دادههای نمایشدادهشده را انتخاب کنید. برای شروع، از پایگاهداده AdventureWorks استفاده میکنیم که شامل جداول و نماهای نمونه است که به ما امکان میدهد جداول و دادههای مشابهی داشته باشیم. ما همچنین قادر خواهیم بود با چندین جدول از قبل ایجاد شده کار کنیم. نکته: شما میتوانید نرمافزار ۲۰۱۶AdventureWorks را نصب و استفاده کنید. کوئریهای SQL (Select Sentence) بیایید با جمله SELECT شروع کنیم، جمله select به ما امکان میدهد دادهها را از یک جدول دریافت کنیم. پرسوجو زیر تمام ستونهای یک جدول را نشان میدهد: SELECT * FROM [HumanResources].[Employee] سعی کنید دستور SELECT را در یک خط و دستور FROM را در یک خط دیگر استفاده کنید. اینطوری خواندن راحتتر است. انتخاب * به معنای نشاندادن تمام ستونهای یک جدول است. راه دیگر برای انجام همین کار مثال زیر است: SELECT [Employee].* FROM [HumanResources].[Employee] براکتهای مربع اختیاری هستند. میتوانید از فاصله در نام ستونها استفاده کنید (که توصیه نمیشود). همچنین میتوانید نام ستونهای خاصی را مانند مثال زیر انتخاب کنید: SELECT [LoginID],[Gender] FROM [HumanResources].[Employee] مثال قبلی ستون loginid و gender را نشان میدهد. همانطور که میبینید، دادهها با کاما از هم جدا میشوند. همچنین میتوانید از نام مستعار برای داشتن نام کوتاهتر مانند مثال زیر استفاده کنید: SELECT e.Gender FROM [HumanResources].[Employee] e مثال قبلی از نام مستعار e برای جدول Employee استفاده میکند. همچنین میتوانیم از نام مستعار برای نام ستونها مانند زیر استفاده کنیم: SELECT e.Gender g FROM [HumanResources].[Employee] e ستون مستعار جنسیت اکنون g است. مثال بعدی ۲ مقدار ممکن مختلف را در ستون جنسیت (مذکر یا مؤنث) نشان میدهد: SELECT DISTINCT e.Gender g FROM [HumanResources].[Employee] e توجه داشته باشید که DISTINCT یک دستور با سرعت پایین است و اگر جدول دارای چندین میلیون ردیف باشد، ممکن است اجرای آن زمان بر باشد و عملکرد را با مشکل مواجه کند. مثال دیگر عبارت TOP است. این بند در SQL Server استفاده میشود و در پایگاهدادههای دیگر مانند Oracle یا MySQL استفاده نمیشود. مثال زیر ۱۰ ردیف اول جدول را نشان میدهد: SELECT TOP 10 e.[BusinessEntityID], e.Gender g FROM [HumanResources].[Employee] e اگر بخواهیم میتوانیم دادهها را بر اساس یک ستون مرتب کنیم، ترتیب بسیار مفید است. مثال زیر نشان میدهد که چگونه BusinessEntityID را به ترتیب نزولی مرتب کنیم. کوئریهای SQL برای فیلترکردن دادهها با استفاده از دستور WHERE دستور Where یکی از رایجترین جملاتی است که در دستور SELECT استفاده میشود. این بند اجازه فیلترکردن دادهها را میدهد. مثال زیر نحوه بررسی BusinessEntityID کارمندانی که عنوان شغلی آنها مهندس طراحی است را نشان میدهد. select [BusinessEntityID], [JobTitle] from [HumanResources].[Employee] e where JobTitle=’Design Engineer’ در این مثال ما از عملگر برابر استفاده کردیم. یکی دیگر از اپراتورهای قدرتمند LIKE است. LIKE، میتواند به ما در جستجو کمک کند. مثال زیر BusinessEntityID و عنوان شغلی کارمندانی را نشان میدهد که عناوین آنها با Design شروع میشود: SELECT [BusinessEntityID], [JobTitle] FROM [HumanResources].[Employee] e WHERE JobTitle LIKE 'Design%' عملگر IN نیز یک اپراتور بسیار رایج است، مثال زیر تمام کارمندانی را نشان میدهد که عنوان شغلی آنها با مدیر مهندسی یا طراح ارشد ابزار برابر است: SELECT [BusinessEntityID],JobTitle FROM [HumanResources].[Employee] e WHERE JobTitle in ('Engineering Manager','Senior Tool Designer') پرس و جوهای SQL با توابع تجمعی و استفاده از دستور Group By در پرسوجوهای SQL، ما به جمع ردیفها، میانگین و سایر توابع تجمعی نیاز داریم. این توابع اغلب با دستورات Group By و Having استفاده میشوند. مثال اول مجموع و میانگین subtotal جداول SalesOrderHeader را نشان میدهد: SELECT SUM([SubTotal]) AS SUBTOTAL,AVG([SubTotal]) AS AVERAGESUBTOTAL FROM [Sales].[SalesOrderHeader] مثال بعدی نحوه بهدستآوردن مجموع ستون orderQty و salesorderid را از جدول salesorderdetail نشان میدهد. ما اطلاعات را بر اساس salesorderid گروهبندی میکنیم و مبلغ را به ترتیب نزول سفارش میدهیم: SELECT SUM([OrderQty]) AS Qty, [SalesOrderID] FROM [Sales].[SalesOrderDetail] GROUP BY [SalesOrderID] ORDER BY SUM([OrderQty]) DESC پرسوجوهای SQL برای دریافت داده از چندین جدول یکی از مهمترین ویژگیهای جداول این است که میتوانید چندین جدول را در یک پرسوجو جستجو کنید. برای این کار از JOINها استفاده میکنیم. انواع مختلفی از JOIN وجود دارد. پیوستن داخلی (Inner Join)، پیوستن بیرونی (Outer Join)، پیوستن به چپ (Left Join)، پیوستن به سمت راست (Right Join). انواع مختلف اتصالات امکان پیوستن به جداول را به روشی متفاوت فراهم میکند. نتیجه گیری در این مقاله کوئریهای SQL مورداستفاده در SQL Server برای دریافت داده را یاد گرفتیم. ما فقط اصول اولیه را دیدیم، اما T-SQL یک کار پیچیده است که برای داشتن یک عملکرد خوب به دانش زیادی نیاز دارد. بااینحال، ما ابتداییترین و مفیدترین پرسوجوها را یاد گرفتیم. منبع https://www.sqlshack.com/sql-queries-in-sql-server-a-beginners-guide/ چه رتبه ای میدهید؟ میانگین ۳ / ۵. از مجموع ۲ اولین نفر باش دانلود مقاله پرس و جوهای SQL در SQL Server (راهنمای مبتدیان) فرمت PDF 5 صفحه حجم 1 مگابایت دانلود مقاله معرفی نویسنده مقالات 379 مقاله توسط این نویسنده محصولات 0 دوره توسط این نویسنده تیم فنی نیک آموز معرفی محصول ایمان باقری دوره آموزشی کوئری نویسی در SQL Server 2.190.000 تومان 1.533.000 تومان مقالات مرتبط ۱۹ شهریور SQL Server علت Attach نشدن دیتابیس در SQL Server و راه حل آن تیم فنی نیک آموز ۱۱ شهریور SQL Server پروتکل های SSL و TLS چه تفاوت هایی دارند؟ تیم فنی نیک آموز ۰۸ شهریور SQL Server اهمیت مانیتورینگ در SQL Server چیست؟ | تمام آنچه که باید از مانیتورینگ بدانید تیم فنی نیک آموز ۰۳ شهریور SQL Server اعمال گواهینامه SSL روی SQL Server تیم فنی نیک آموز دیدگاه کاربران لغو پاسخ دیدگاه نام و نام خانوادگی ایمیل ذخیره نام، ایمیل و وبسایت من در مرورگر برای زمانی که دوباره دیدگاهی مینویسم. موبایل برای اطلاع از پاسخ لطفاً مرا با خبر کن ثبت دیدگاه Δ