۵ نکته برای SQL

گردآوری و تالیف : ارسطو عباسی
تاریخ انتشار : 02 مهر 1397
دسته بندی ها : برنامه نویسی

در این مطلب می‌توانید نکاتی را برای بهبود کارایی کوئری‌ها و ساده‌سازی طرح‌ها مشاهده کنید.

 ۱. نام ستون‌ها و جداول را ساده انتخاب کنید

  • بجای استفاده از دو کلمه یا بیشتر، از یک کلمه برای نام‌گذاری جداول استفاده کنید. اگر مجبور به استفاده از کلمات دیگری بودید بجای استفاده از فضای خالی از آندرسکور (ـ) استفاده کنید.
  • استفاده کردن از علامت نقطه (.) در شئ‌ها باعث سردرگمی در بین نام طرح‌ و بانک اطلاعاتی می‌شود. اگر هم از فضای خالی یا space استفاده کنید نیاز است که برای اجرای کوئری‌ها از کوتیشن استفاده نمایید.
  • نام جداول و ستون‌ها را به صورت همخوان با استفاده از حروف کوچک بنویسید. اینگونه یکی دیگر از قضایا که باعث ایجاد پیچیدگی –منظور case sensitive بودن- می‌شود را می‌توانید حل کنید.

۲. کار با تاریخ در SQL

  • Date را به datetimes تبدیل کنید، اینگونه کارایی بالاتری خواهید داشت.
  • کار کردن با تاریخ‌هایی که در قالب رشته ذخیره شده‌اند بسیار سخت است. تقریبا فیلتر کردن در این حالت غیر ممکن یا بسیار سخت می‌شود. همیشه مطمئن باشید که از فیلدهای درستی استفاده می‌کنید.
  • از UTC برای منطقه زمانی‌تان استفاده کنید. اگر از یک ترکیب غیر UTC استفاده کنید درک داده‌ها برای‌تان بسیار سخت خواهد شد.

۳. ترتیب اجرا را بدانید

  • درک ترتیب کوئری‌ها به شما این کمک را می‌کند تا بتوانید بهتر اجرای یا شکست کوئری‌ها در اجرا را درک کنید. 
FROM – Includes JOINs so consider using a CTE or subquery to do filtering first. 
WHERE - To limit the joined dataset. 
GROUP BY – Collapses fields down with aggregate functions (COUNT, MAX, SUM, AVG) 
HAVING - Performs the same function as the WHERE clause with aggregate values.
SELECT - Specifies values and aggregations remaining in the set after grouping.
ORDER BY – Returns the table sorted by a column or multiple columns. 
LIMIT – Specifies how many rows to be returned to avoid returning too much data. 

۴. محدودیت‌های NULL

  • منظور از Null این است که مقدار شناخته شده نیست، هیچوقت آن را با صفر یا مقدار خالی اشتباه نگیرید. وجود مقدار شناخته نشده باعث می‌شود که مقایسه کردن آن تقریبا غیر ممکن شود. شما چگونه می‌خواهید NULL را با NULL دیگری مقایسه کنید. همواره بهتر است که مقدار Null را بهتر درک کنید و محدودیت‌های آن را بهتر شناسایی نمایید. در این لینک می‌توانید اطلاعاتی جامعی راجع به Null پیدا کنید. 

۵. شیوه ایجاد جدول را بدانید

وقتی که از یک جدول دیگر، جدولی را می‌سازید، قبل از وارد کردن داده به آن‌ها از Select Top 0 استفاده کنید، اینگونه ساختار جدول‌تان ایجاد می‌شود. 

برای انجام چنین کاری باید یک قدم بیشتر را انجام دهید اما زمان توسعه را بهینه‌تر می‌کند. 

insert into <table name2>

select [ID] ,

[CreatedDate] ,

[RegionName] ,

[SalesPerson]

from <table name1 >

اگر در حال بروزرسانی یک جدول همراه با داده‌های جدید بودید از دستور TRUNCATE استفاده کنید. این گزینه تمام ردیف‌های جدول را بدون ایجاد تغییر در قالب و سربرگ‌های آن حذف می‌کند.

truncate table <table name1> -- deletes the contents of the table

insert into <table name1>

select

[ID] ,

[CreatedDate] ,

[RegionName] ,

[SalesPerson]

from ...

منبع

مقالات پیشنهادی

20 کتابخانه عالی برای تابستان 1395 - قسمت اول

اولین بار php در سال 1995 ارائه شده و تا به الان مخاطبان خیلی خیلی زیادی داره و همچنین کسانی که با اون کار میکنن هم خیلی زیاد هستند به همین خاطر هر رو...

تغییرات اولیه لاراول 5.6

نسخه ی جدید لاراول یعنی 5.6 قراره که در فوریه ی 2018 منتشر بشه. در این مقاله می خواهیم نگاهی به آخرین جزئیات منتشر شده درمورد Laravel 5.6 بیاندازیم. 

5 دلیل ارزان نبودن طراحی UX

رشد بسیار سریع تکنولوژی درده سال اخیر امکان پیشرفت در تمام صنایع را فراهم کرده و آن را به یک عرصه پیچیده تر تبدیل کرده است. در طول این مدت انتظارات ،...

5 نکته تمییز کردن بعد از یک پروژه طراحی

بچه‌ها از انجام کارهای خلاقانه با اسباب‌بازی‌ها لذت می‌برند. آن‌ها همه جای کف یک اتاق را پر از اسباب بازی می‌کنند. اما در نهایت همیشه آخر آن به خوبی ت...