سه شنبه ۵ اردیبهشت ۱۳۹۶
 
 
 
کلمه عبور خود را فراموش کرده اید؟
 

 
 
 SQL Server 2000 قسمت سوم
Database / LINQ / EF
تاریخ ثبت:  ۸۷/۴/۳۰
تعداد نمایش:  ۳۸۳۴
  نویسنده: مسعود تکلو
 
   ۶  نفر تا این لحظه به این مقاله امتیاز داده اند.
 
   Bookmark and Share

آموزش SQL Server 2000  

 

جلسه سوم

 دستور Select

 شکل کلی :

SELECT [ALL | DISTINCT] [{TOP integer}]

 select_list
[ INTO new table ]
FROM table source
[ WHERE search condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order expression [ ASC | DESC ] ]

دستور Select برای بازیابی اطلاعات از جداول موجود در database می باشد که پارامتر های آن را یک به یک با هم دیگر بررسی می کنیم.

 

توضیح : در اینجا از یک جدولی که با اجرای کد زیر ایجاد می شود استفاده می شود .

 

Create table tb (id int ,name nvarchar(50),lname nvarchar(50),oldyear nvarchar(5))

 

All :

تمامی رکوردها

Distinct :

از تکرار در رکورهای بازگشتی جلوگیری می کند ( تکرار در اینجا یعنی فیلدهایی که انتخاب شده کاملا شبیه هم دیگر باشند .)

Top :

با توجه به عددی که جلوی این دستور قرار می گیرد به همان تعداد از رکوردهای بازیابی شده  n  رکورد بالا را برمی گرداند. ( اگر 10 رکورد داشته باشید و n را 3 قرار دهیم 3 رکورد اول را بازیابی می کند )

Into :

این دستور برای قرار دادن اطلاعات یک جدول در یک جدول دیگر است . توجه داشته باشید جدول دومی نباید وجود داشته باشد زیرا جدول دوم دقیقا باید مثل جدول اول باشد پس بنابراین خودSQLl این کار ساخت جدول را انجام می دهد.

From :

بعد از این دستور نام جدول یا جدول هایی که فیلد های آنان را می خواهید بازیابی کنید آورده می شود . اگر چند جدول باشد با علامت (,) از هم جدا می شوند.

نکته : برای ذکر کردن نام فیلد های مختلف از جدول های مختلف باید اول اسم جدول و بعد یک نقطه و بعد اسم فیلد را ذکر کنید(tb.id)

Where :

بعد از این دستور شرط های بازیابی قرار می گیرد که به این صورت است که اول نام فیلد مورد نظر بعد عملگر(مقایسه ای) خاص و بعد مقدار قرار می گیرند . (در بعد درباره این دستور صحبت خواهیم کرد .)

Group by :

 از این دستور برای گروه بندی رکورده استفاده می شود برای این کار باید اسم فیلد که می خواهید دسته بندی بر اساس ان انجام شود را جلوی ان ذکر می کنید و اگر می خواهید از چند فیلد استفاده کنید انها را با علامت (,) از هم جدا کنید دقت کنید که ترتیب قرار گرفتن فیلد ها مهم است هر فیلدی جلو تر ذکر شود اول دسته بندی براساس ان انجام می شود و حاصل براساس فیلد بعدی دسته بندی می شود .

نکته : توجه داشته باشید هر فیلدی را که بازیابی می کنید باید اسم آن را در دستور Group By بیاورید در غیر اینصورت خطا دارید.

Having :

این دستور هنگام استفاده از دستور Group by مورد استفاده قرار می گیرد . این دستور هم مانند Where  عمل می کند فقط با این تفاوت که شرط آن روی رکورد های دسته بندی شده اعمال می شود.

 Order by :

 از این دستور برای مرتب سازی رکورد های بازیابی شده استفاده می شود  که به ایت ترتیب است که نام فیلد جلوی آن ذکرمی شود و اگر از چند فیلد برای مرتب سازی استفاده می کنید آنهارا با علامت (,) از هم جدا کنید و توجه داشته باشید که ترتیب قرار گیری هم است.

پارامتری که این دستور می گیرد تعیین می کند که مرتب سازی صعودی باشد یا نزولی که ASC نشانه صعودی وDESC  برای نزولی بودن آن.

 

مثال ها :  

1-

Select All From tb

تمامی رکورد های جدول tb را نمایش می دهد.

2-

Select ID,Name From tb

فقط فیلدهای id و  name تمام رکورد ها از جدول tb را نمایش می دهد.

3-

Select * From Tb Where oldyear > 20

 افرادی را که سن انها از 20 سال بیشتر باشد را نمایش می دهد .

4-

Select Id,name From tb Group By name,id

فیلد های id و name تمامی رکوردها را بر می گرداند و اول بر اساس نام و بعد بر اسا س کد دسته بندی می کند.

5-

Select id From tb Group By id having id >2

فیلد id رکورهای که پس از دسته بندی مقدارشان بیشتر از 2 باشد را بر می گرداند.

6-

Select * from Tb order by id ASC, name DESC                                                                                                     

تمامی رکوردها را بر می گرداند و بر اساس کد و نام  مرتب سازی می کند . توجه داشته باشید که کد را صعودی و نام را نزولی مرتب می کند.

7-

Select * into tb1 from tb

تمامی رکورد های موجود در جدول TB را در جدول TB1 که خودش ساخته قرار می دهد .

  کیفیت مقاله ارائه شده از نظر شما   
برای دادن رتبه به این مقاله می بایست Login کرده باشید.
  درباره نویسنده
مسعود تکلو
عضو گروه برنامه نویسی مشهد , و عضویت در شرکت متخصصان فناوری شرق با ریاست آقای محمد ژاله پور
همه مقاله های نوشته شده توسط این کاربر (۶)
 
  پیام جدید
صفحه ۱ - پیامهای اصلی ۱ تا ۳ از مجموع ۳ پیام اصلی
اولین قبلی بعدی

 عنوان فرستنده تاریخ
 
فوق العاده اسماعیل صحنعلی زاده ۱۳۸۷/۱۰/۱۱
 
تشکر فرزانه خ ۱۳۸۷/۸/۲۱
 
تشکر امیر اقبال ۱۳۸۷/۷/۲۵
اولین قبلی بعدی

Copyright © 2006 - 2016 All Rights Reserved.
Please direct your questions or comments to