ورود

View Full Version : فیلتر اطلاعات از دو جدول



masoud903
جمعه 07 خرداد 1389, 11:30 صبح
با سلام
برای سوال زیر چه کدی رو پیشنهاد میکنید؟(حدس میزنم با sql راحت انجام شه اما دستورش رو نمیدونم)
برنامه داخل یک فیلد از دو جدول مختلف بگرده و اون رکوردهایی که مقادیر اون فیلدشون تکراری نیست رو به ما برگردونه
مثلا در table1 و table2 در فیلد x جستجو کنه(هر دو جدول ساختار یکسانی دارند) و در پایان رکوردهایی که بین این دو جدول تکراری نیست رو برگردونه


این سوال رو کردم چون یه لیست 300 تایی رو به چند نفر از بچه های شرکت دادم که بررسی کنند و هر کدومشون یه تعداد رو بررسی کردند
مثلا آقای الف 150-آقای ب 40 -آقای ج 60 (یعنی 50 تا کد بررسی نشده)
حالا من این سه جدول رو یکپارچه کردم و میخوام با جدول اولیه مقایسه کنم ببینم چه کدهایی بررسی نشده (یعنی بین جدول اصلی و جدول بررسی شده چه کدهایی تکراری نیست)
با تشکر از لطف همه دوستان

مهدی قربانی
جمعه 07 خرداد 1389, 17:31 عصر
سلام
شما میتونید از دستور Dcount برای این منظور بهره بگیرید یعنی اگر Dcount مثلاً یک کد خاص از یک بیشتر باشه معنیش اینه که این مقدار تکراری هست برای آشنایی با این تابع عبارت Dcount رو میتونید در اینجا جستجو کنید یا در Help اکسس به اون مراجعه کنید .

masoud903
جمعه 07 خرداد 1389, 23:07 عصر
با سلام و تشکر از جناب قربانی(اینجا واقعا یه دانشگاه با اساتیدی مثل شما و بقیه...که بی غرض در راه پیشرفت سایرین تلاش میکنند)
من چون این مورد رو برای فردا لازم داشتم جستجو کردم و یه راه پیدا کردم که بهم اون نتیجه ای رو که می خواستم داد(این روش رو آقای علی کشاورز در فروم برنامه نویسی دلفی پیشنهاد کرده بودند)
برای استفاده سایر دوستان کد و نمونه مثالی که تهیه کردم رو میذارم و اگر تونستم روش آقای قربانی رو هم یه نمونه میذارم تا مبحث کامل شه اگر هم نتونستم یکی از دوستان یا جناب آقای قربانی یه نمونه بذارن ممنون میشم

برای اینکار یک query union میسازید


SELECT ID From Table1 WHERE ID NOT IN (SELECT ID FROM Table2)
UNION
SELECT ID From Table2 WHERE ID NOT IN (SELECT ID FROM Table1)
Queryد بالا ID تمام رکوردهایی که در جدول اول وجود دارند، ولی در جدول دوم موجود نیستند + تمام رکوردهایی که در جدول دوم وجود دارند و در جدول اول موجود نیستند را بر می گرداند.

و نمونه مثال که بسته به نیاز خودم تغیرش دادم