بحث ویکی‌پدیا:ویکی‌پروژه ابهام‌زدایی/زیرپروژه ۱۳

message: سلام. برای فهرستی از صفحه‌های ابهام‌زدایی مورد نیاز این پرسمان را نوشتم: . روش کار این است که صفحه‌های دارای پرانتز در عنوان (مثل الف (ب)) را پیدا می‌کند و اگر الف صفحهٔ ابهام‌زدایی نیست و الف (ابهام‌زدایی) هم موجود نیست آن را فهرست می‌کند. یکی از نقایصش متعددش این است که در صورتی که فقط یک عنوان دارای پرانتز داشته باشیم هم آن را در فهرست می‌آورد، در صورتی که در این حالت نیازی به صفحهٔ ابهام‌زدایی نیست (البته اگر انتخاب عنوان اصلی به درستی صورت گرفته باشد). برای رفع این مشکل نیاز داریم بتوانیم تعداد صفحه‌های الف (...) را بشماریم، ولی این کار (حداقل در این شکل پرسمانی که من نوشتم) غیرممکن به نظرم رسید. آیا همینطور است؟
یک پرسش نامرتبط دیگر: آیا ما به نسخه‌های قدیمی یک نوشتار دسترسی داریم؟ یعنی می‌توانیم وجود مثلاً یک رده یا پیوند را در اولین یا ششمین (در صورت وجود) نسخهٔ یک نوشتار بررسی کنیم؟
پوزش بابت مزاحمت‌های مکرر و ممنون از وقتی که برای این پروژه می‌گذارید. Saeidpourbabak (بحث) ‏۱۲ ژوئن ۲۰۱۶، ساعت ۱۴:۴۷ (UTC)
replies: text: سلام.  باید بتواند کار مورد نظر شما را انجام دهد (اشاره به بخشی که می‌گوید having count(*) > 1). البته کند است و شاید کشته‌شود. با limit صدتایی که امتحان کردم ظاهراً مشکلات دیگری هم دارد مثل اینکه Cd (دستور) را به این علت که CD (ابهام‌زدایی) با حروف بزرگ است در فهرست نتایج می‌آورد.

text: خیر، در دادگان labs جدول متن نسخه‌ها موجود نیست.

text: خواهش می‌کنم. Dalba ‏۱۳ ژوئن ۲۰۱۶، ساعت ۰۲:۲۰ (UTC)
replies: text: : سلام. ممنون از راهنمایی. چند بار سرعت EXITS و IN را مقایسه کرده‌ام (با علم نسبی به اینکه کارهای متفاوتی انجام می‌دهند و گاه غیرقابل‌ جایگزینی‌اند) و EXISTS را بسیار کندتر یافته‌ام. پرسمان خودم را با IN نگه داشتم و سعی کردم بخش پایانی کد شما را بوسیلهٔ IN برای خودم بنویسم، نشد. در نتیجه حذف عنوان‌های با بسامد پایین تا این لحظه شکست خورده است، در عوض پرسمان در ۳-۲ دقیقه به جواب می‌رسد. مسألهٔ همیشگی فاصله-نیم‌فاصله-بی‌فاصله حل شده (آب باریک (قروه) را نمی‌دهد، چون آب‌باریک صفحهٔ ابهام‌زدایی‌ست)، و چون راهی برای عدم حساسیت به کوچک-بزرگ حروف انگلیسی پیدا نکردم (و نیز دل خوشی از صفحه‌های ابهام‌زدایی با کاراکتر انگلیسی ندارم) کلاً حذف‌شان کردم. حال باید بر پایهٔ تعداد عنوان‌های همنام در ستون دوم توسط برنامه‌ای دیگر (مثلاً اکسل) عنوان‌های پرتکرار را نگه داشت. این کاری بود که من کردم. اگر ایده‌ای برای بهبود داشتید دریغ نکنید. سپاس. Saeidpourbabak (بحث) ‏۱۴ ژوئن ۲۰۱۶، ساعت ۱۴:۳۲ (UTC)
replies: text: ::چند نکته که احتمالاً اینجا کاربردی ندارد، ولی گفتنش هم ضرری ندارد: همیشه آنطور نیست، خیلی‌جاها ممکن است exists نتیجهٔ بهتری بدهد، به هر حال بررسی دقیق کارایی نیازمند بررسی plan مورد استفاده است که فکر می‌کنم ما به دستور explain دسترسی نداریم و اگر هم داشتیم می‌تواند کار سختی باشد و شاید همین روش آزمایش‌کردن ساده‌تر و مطمئن‌تر است. البته اگر زمان اجرا بیش از حد طولانی شده‌باشد، می‌شود مسئله را به چند قسمت تقسیم کرد (مثلاً بر اساس عنوان مقاله‌ها و یا دیگر تکنیک‌های تقسیم و حل) و بعد نتایج را کنار هم گذاشت، با این حال انجام این کار از راه quarry سخت است. برای بررسی عنوان‌های کوچک‌وبزرگ انگلیسی می‌شود هر دو عنوان را با تابع LOWER کوچک کرد و نتایج را مقایسه کرد، ولی تا اینجا هم به اندازهٔ کافی سنگین شده :) مسئلهٔ تعداد عنوان‌های همنام هم که ظاهراً از روشی دیگر حل شده... Dalba ‏۱۴ ژوئن ۲۰۱۶، ساعت ۱۵:۴۱ (UTC)
replies: text: ::: سلام. ممنون. اطلاعات مفیدی بود. من این کار را نه بطور اصولی و صرف وقت، که با سعی و خطا سرهم‌بندی کدهای موجود و البته کمک شما یاد گرفته‌ام، از این رو کم پیش نمی‌آید که حرف یا کدم اشتباه دربیاید. در نتیجه این نوع سرنخ‌ها همیشه مفید و مغتنم است. سپاس. Saeidpourbabak (بحث) ‏۱۴ ژوئن ۲۰۱۶، ساعت ۲۳:۰۵ (UTC)
thread_title:  ایجاد فهرست صفحه‌های ابهام‌زدایی مورد نیاز