آشنایی به زبان T-SQL و کوئری نویسی
در ادامه با زبان T-Sql و کوئری نویسی آشنا خواهیم شد.
در دیتابیس یک سری اطلاعات داریم و یک سری Object یا اشیا که شامل جدولها یا Stored Procedure های ما میشوند که با کوئری نویسی هم با دیتا و هم با اشیا میتوانیم کار کنیم.
برای کوئری نویسی روی دیتابیس مد نظر کلیک کرده و گزینه New Query را انتخاب کنید و کوئری مد نظر را بنویسید و برای اجرا یا Execute از گزینه Execute یا کلید F5 استفاده کنید.
ساده ترین دستور ، دستوری Select هست و به شکل زیر نوشته میشود.
دستور SELECT * From Table از جدول مد نظر ، تمامی دیتا ها و تمامی ستون ها را برایمان فراخوانی میکند.
نکته ای که وجود دارد این است که کد ها و کلمات کلیدی در SQL چه بزرگ چه کوچک باشند اهمیتی ندارد و اصطلاحا Case Sensitive نیست ولی بهتر است قواعد را رعایت کرده و همه کلمات کلیدی را Upper Case بنویسیم.
برای UPPER CASE کردن کل کلمه را انتخاب کرده و کلید Ctrl + Shift + U را بزنید.
SELECT DISTINCT :
در بعضی کوئری ها ممکن است اطلاعات تکراری بازیابی شوند که برای حذف رکوردهای تکراری میشه از دستور SELECT DISTINCT استفاده کرد.
اما حواستان باشد که این دستور کند هست و فقط در موارد خاص ازش استفاده کنید
WHERE Clause :
اعمال شرط روی رکورد هایی که میخواهیم آنها را بازیابی کنیم.
یکی از مواردی که سرعت بازیابی و لود دیتا را زیاد میکند استفاده از WHERE هست. زیرا حجم دیتای که باید لود شود را کمتر میکند.
فرض کنید در حالت کلی بدون WHERE ، ممکن چندین میلیون رکورد از سرور دیتابیس به سیستم ما منتقل شود ، در صورتی که با استفاده از WHERE ، این حجم دیتا ممکن است به مقادیر خیلی کمتری تبدیل شود و فشار روی سرور دیتابیس و شبکه را هم کمتر میکند.
عملگر هایی که میتوان از آنها در SQL استفاده کرد را در تصویر زیر میبینیم.
https://www.w3schools.com/sql/sql_operators.asp
عملگر BETWEEN به این صورت است که میتوانیم برای WHERE Clause یک بازه تعیین کنیم.
توجه کنید که در اینجا خود مقادیر ۵۰ و ۱۰۰ هم در نظر گرفته میشوند.
در ادامه برای کار با Operators ، به AND , OR , NOT میپردازیم.
عملگر AND به ما کمک میکند که شروطی را مشخص کنیم و صحیح بودن آن شروط را اجباری کنیم تا دستور اجرا شود.
برای مثال در دستور
SELECT * FROM DimProduct
WHERE ListPrice >= 50 AND Color = ‘RED’
باید هر دو شرط برقرار باشند تا کامند دیتا های صحیح را نمایش دهد.
عملگر OR نیز به این صورت است که اگر یکی از شروط هم True باشد ، رکورد های مورد نظر را برایمان نمایش میدهد.
عملگر NOT هم به این صورت کار میکند که یک شرط را برایمان معکوس میکند. البته خیلی رایج نیست.
کد زیر , رکورد هایی را برایمان می آورد که رنگشان قرمز نباشد.
SELECT * FROM DimProduct WHERE NOT Color = ‘RED’