یکی از اصلیترین موضوعاتی که در SQL باید بررسی شود بحث پرسوجو و یا همان Query است، هر پرسوجو میتواند شامل چندین دستور باشد که در زیر آنها را بررسی میکنیم.
3-1-5-1 بررسی دستور SELECT
برای اینکه در SQL اطلاعات را از جدولهای بازیابی به قولی فِچ کنیم از دستور SELECT استفاده میکنیم، در زیر نمونهای از این دستور را مشاهده میکنید:
SELECT column1, column2, …
FROM table_name;
در دستور بالا، دستور SELECT را با حروف بزرگ مینویسیم و بعد از آن باید ستون (column1, column2) مربوط به جدولی را که میخواهید دادهها را از آن استخراج کنید مینویسید، در سطر دوم با دستور FROM، اسم جدول را بهجای table_name مینویسید.
برای اینکه این دستورات را در سرور SQL تست بگیریم باید بهمانند شکل 15-3 وارد Management شوید و بر روی دیتابیس مورد نظر خود کلیک راست کنید و گزینهی New Query را انتخاب کنید.
شکل 15-3 ایجاد Query
برای شروع کار به جدول 5-3 توجه کنید، میخواهیم با استفاده از این جدول عملیات مختلف خود را انجام دهیم و دادهها را فراخوانی کنیم.
جدول 5-3 Customers
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
1 | Maria | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana | Ana Trujillo | Avda. de la Constitución 2222 | México | 05021 | Mexico |
3 | Antonio | Antonio Moreno | Mataderos 2312 | México | 05023 | Mexico |
4 | Thomas | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Christina | Christina | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
برای ایجاد این جدول از طریق SSMS یک جدول ایجاد کنید و آن را با اسم Customers ذخیره کنید و بعد از ایجاد، اطلاعات جدول 5-3 را درون آن وارد کنید تا در ادامه بتوانید از آنها استفاده کنید، این موضوع را در شکل 16-3 مشاهده میکنید.
شکل 16-3 ویرایش جدول Customers
شکل 17-3 ورود اطلاعات در جدول Customers
مثال اول – انتخاب ستون
SELECT [Customer Name] , City FROM Customers
در دستور بالا، ستون Customer Name و City از جدول Customers انتخاب شده است، توجه داشته باشید علامت [] را بهتر است زمانی قرار دهید که یک جملهی دو حرفی یا بیشتر دارید، مثلاً در مثال بالا اگر city بود، نیاز به علامت [] نبود، اما چون Customer Name از دو قسمت با فاصله تعریف شده است باید حتماً علامت [] را قرار دهید.
بهمانند شکل 18-3 دستور مورد نظر را بنویسید و برای دریافت خروجی باید کلید F5 را فشار دهید، این دستور دو ستون Customer Name و City را در خروجی نمایش میدهد.
شکل 18-3 خروجی دستور SELECT
مثال دوم – نمایش تمام اطلاعات جدول
برای اینکه بتوانید همهی اطلاعات جدول مورد نظر خود را مشاهده کنید باید از دستور زیر استفاده کنید:
SELECT * FROM Customers
همانطور که در شکل 19-3 مشاهده میکنید، تمام اطلاعات جدول در خروجی نمایشداده شده است.
شکل 19-3 نمایش جدول Customers
اگر بخواهیم در یک جدول، تنها اطلاعات متمایز شده و نه تکراری را نمایش دهیم باید از دستور زیر استفاده کنیم:
SELECT DISTINCT column1, column2, …
FROM table_name;
در دستور بالا بهمانند قبل باید نام ستونها را جلوی دستور SELECT بنویسید، اما تنها باید بعد از دستور SELECT از DISTINCT استفاده کنید تا اطلاعات شبیه به هم را تنها یکبار در خروجی نمایش دهد.
مثال سوم – نمایش اطلاعات شهرهای مشابه
دستورات زیر را اجرا کنید:
SELECT Country FROM Customers;
SELECT DISTINCT Country FROM Customers;
خروجی دستورات بالا را در شکل 20-3 مشاهده میکنید، دستور اول تمام شهرها را به شما نمایش داده است، اما در دستور دوم تنها یکی از شهرهای Mexico را نمایش داده است و این مورد میتواند در نمایش بهتر اطلاعات کمک کند.
شکل 20-3 نمایش جدول