بهینه سازی دستور SELECT در SQL Server (بخش اول)

بهینه سازی دستور SELECT در SQL Server (بخش اول)

یک دیدگاه

در بسیاری از مواقع وقتی می خواهید ساختار یک جدول را بررسی نمایید و یا تمام ستون های یک جدول را برگردانید معمولاً از دستور select * استفاده می کنید. درصورتی که جدول شما شامل تعداد فیلد های زیاد و رکورد های بی شماری از اطلاعات باشد حجم کاری بسیار زیادی برای Database Engine تعریف کرده اید.

select *
from Person.Person

در این حالت Database Engine برای بازخوانی ساختار جدول، باید View های موجود در INFORMATION_SCHEMA کوئری گرفته و فهرستی از ستون های جدول مورد نظر را بازخوانی کرده و بر اساس آن داده ها را به شما نمایش خواهد داد.
این در حالیست که با مشخص کردن لیست ستون های مورد نظر شما عملاً به Database Engine می گویید به چه ترتیبی و از کدام جدول اطلاعات خوانده شوند و عملاً نیاز به کوئری گرفتن از INFORMATION_SCHEMA وجود نخواهد داشت.

select p.BusinessEntityID,p.PersonType,p.NameStyle,p.Title,
                 p.FirstName,p.MiddleName,p.LastName,p.Suffix,p.EmailPromotion,
                 p.AdditionalContactInfo,p.Demographics,p.rowguid,p.ModifiedDate

from Person.Person p

این نکته را همیشه به یاد داشته باشید: همیشه دقیقا ستون های مورد نظر وهمان حجم از دیتارا که نیاز دارید توسط کوئری بازخوانی کنید.

آواتار کاربر

شهاب ساری اصلانی

از سال 1385 به صورت جدی مشغول تدریس در حوزه های برنامه نویسی دات نت و طراحی بانک های اطلاعاتی بوده ام. تدریس به عنوان یک حرفه همیشه برایم جذاب بوده و یادگیری جدیدترین مباحث لذت بخش است.

یک دیدگاه

  1. دی ۱۱, ۱۳۹۸

    ممنون از مطلب مفید و خوبتون
    ممکنه در مورد information schema بیشتر توضیح بدین و کاربردش رو شرح بدین لطفا

ارسال یک دیدگاه

آدرس ایمیل شما منتشر نخواهد شد.