خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016
نویسنده : امیر انصاری
یک پرس و جوی پیدا کردن رکوردهای تکراری (find duplicates query) به شما امکان می دهد تا رکوردهای تکراری (duplicate records) موجود در یک یا چند جدول را بیابید و شناسایی کنید. یک رکورد تکراری (duplicate record) رکوردی است که به یک چیز یا یک شخص یکسان اشاره می کند.

نرم افزار سامانه مودیان راهکار



تمامی رکوردهایی که دارای اطلاعات مشابه هستند تکراری نمی باشند. برای مثال، رکوردهای مربوط به دو سفارش که در دو تاریخ جداگانه درج شده اند و دارای آیتم های یکسانی می باشند را نمی توان تکراری محسوب کرد. به همین ترتیب، همه رکوردهای دارای داده های یکسان را نمی توان تکراری به حساب آورد. به عنوان مثال، اگر دو مشتری هم نام داشته باشید که آدرس آنها با هم متفاوت باشد. در اینجا آن مشتری که آدرس قدیمی و باطل شده را دارد، می تواند یک رکورد تکراری به حساب آید.

برای چه خلاص شدن از شر رکوردهای تکراری مهم می باشد؟ مثالی را که در مورد دو مشتری هم نام با آدرس های متفاوت زدیم را در نظر بگیرید. اگر به ازاء یک مشتری یکسان چندین رکورد داشته باشیم، هنگامی که بخواهیم تاریحچه سفارش های آن مشتری را مشاهده کنیم به مشکل خواهیم خورد، چرا که اطلاعات سفارش های آن مشتری بین رکوردهای تکراری آن مشتری تفکیک شده است. حتی ممکن است این رکورد تکراری منجر شود تا سفارش جدید آن مشتری را به آدرس اشتباهی تحویل بدهیم. رکوردهای تکرای می توانند یکپارچگی و کارآیی پایگاه داده را کاهش بدهند.

خوشبختانه، نرم افزار اکسس امکان جستجو و پیدا کردن رکوردهای تکراری را به شما می دهد. توجه داشته باشید که اکسس نمی تواند رکوردهای تکراری را برای شما حذف کند و یا حتی اینکه مشخص کند کدام رکورد صحیح و کدام غیر معتبر است، این کارها را باید خودتان انجام بدهید. اگر شما با داده های موجود در پایگاه داده خود آشنا باشید، خلاص شدن از شر رکوردهای تکراری یک کار قابل مدیریت می باشد.

روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری


تب Create را در ریبون انتخاب کنید، گروه Queries را بیابید و بر روی دستور Query Wizard کلیک کنید.

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016
کادر محاوره ای New Query نمایان می شود. از لیست انواع پرس و جوها، گزینه Find Duplicates Query Wizard را انتخاب کرده و سپس OK کنید.

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016
جدولی را که می خواهید در آن به دنبال رکوردهای تکراری بگردید، انتخاب کنید و سپس بر روی Next کلیک کنید. ما می خواهیم دنبال رکوردهای مشتریان تکراری بگردیم، برای همین جدول Customers را انتخاب می کنیم.

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016
فیلدهایی که می خواهید معیاری برای تکراری بودن در نظر گرفته شوند را انتخاب کنید و سپس بر روی دکمه با علامت فلش سمت راست، کلیک کنید. تنها فیلدهایی را انتخاب کنید که نباید یکسان باشند. برای مثال، در اینجا ما فیلدهای First Name (نام) و Last Name (نام خانوادگی) را انتخاب می کنیم، چرا که می دانیم مشتریان ما اسامی یکسان ندارند.

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016
بعد از اینکه فیلدهای مورد نظرتان را اضافه کردید بر روی Next کلیک کنید.

حالا فیلدهای بیشتری را که می خواهید در نتیجه این پرس و جو ظاهر گردند را انتخاب کنید. فیلدهایی را انتخاب کنید تا بتوانید با مقایسه آنها تشخیص بدهید کدام رکورد تکراری قدیمی تر و غیر قابل ارجاع می باشد. در واقع شما از روی این فیلدهای موجود در نتایج پرس و جو است که تصمیم خواهید گرفت، کدام رکوردها را باید نگهدارید و کدام را باید حذف کنید. در این مثال ما 4 فیلد مربوط به آدرس مشتری و همینطور شماره تلفن مشتری را انتخاب می کنیم. وقتی از نتیجه کار راضی بودید بر روی Next کلیک کنید.

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016
نرم افزار اکسس نامی را برای این پرس و جو پیشنهاد می دهد. شما می توانید این نام را تغییر بدهید یا آن را به همان شکل بپذیرید. در نهایت بر روی Finish کلیک کنید تا پرس و جوی شما اجرا گردد.

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016
اگر اکسس در پرس و جوی شما رکوردهای تکراری بیابد، آنها را در نتایج پرس و جو به شما نمایش می دهد. رکوردها را مرور کنید و مواردی را که نمی خواهید دیگر در داده های شما موجود باشند، حذف کنید.

19. روش ایجاد یک پرس و جو برای پیدا کردن رکوردهای تکراری در اکسس 2016

نکته هایی برای حل کردن مشکل رکوردهای تکراری


  • پرس و جوهای پیدا کردن رکوردهای تکراری (find duplicates query) را در پایگاه داده خود ذخیره کنید و هر چند وقت یکبار آنها را اجرا کنید تا جلوی انباشته شدن رکوردهای تکراری را بگیرید.

  • برای درک اینکه کدام رکورد تکراری را باید نگهداری کنید و کدام را حذف کنید می توانید به داده های مرتبط با آنها در سایر جداول دقت کنید. برای پیدا کردن داده های مرتبط با یک رکورد در سایر جداول می توانید فیلد شناسه (ID) آن رکورد را در سایر جدول های مرتبط مورد جستجو قرار بدهید. به عنوان مثال اگر رکورد تکراری شما یک مشتری باشد، با مشاهده سفارش های رکوردهای تکراری می توانید متوجه شوید که کدام مشتری به سفارش های قدیمی تر مرتبط است و کدام مشتری به سفارش های جدیدتر مرتبط شده است.

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


آموزش قبلی : 18. ایجاد یک پرس و جوی پارامتریک (Parameter Query) در اکسس 2016

نمایش دیدگاه ها (4 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.