PDA

View Full Version : نمایش اختلاف اطلاعات 2 جدول SQL



mitra285
سه شنبه 30 فروردین 1390, 08:57 صبح
با سلام خدمت همه دوستان
فرض کنید ما در SQL دو جدول داریم به نام A و B .
در جدول A فیلد کد پرسنلی از شماره 1000 تا 1500 را داریم.
در جدول B حدود 370 رکود وجود دارد که فیلد کد پرسنلی اعداد مابین همین 1000 تا 1500 در آن وجود دارد.

حالا با توجه به رکوردهای موجود در جدول B چه جوری می شه کدهای پرسنلی را که در جدول A وجود دارند و جدول B نیستد را در یک Gridview نمایش داد.

ممنون می شم دوستان راهنمایی کنن.

Mani_rf
سه شنبه 30 فروردین 1390, 11:20 صبح
ساده ترین راه این است :



Select * From B Where Code Not in(Select Code From A)

Mani_rf
سه شنبه 30 فروردین 1390, 13:44 عصر
کد SQL که نوشتی را در خود SQL اجرا کن ببین خروجی میده یا نه.

mitra285
سه شنبه 30 فروردین 1390, 15:41 عصر
ضمن تشکر از شما مشکل حل شد اشتباه از من بود که نام جداول را اشتباه نوشته بودم.

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

لطفا در صورت امکان در این خصوص نیز راهنمایی بفرمائید.

با تشکر از شما

Mani_rf
سه شنبه 30 فروردین 1390, 16:15 عصر
با استفاده از Join و عملگر <> (مخالف) می توانی چیزی که گفتی را به دست بی آوری.
به نظر من شما وقت بگذار و SQL را یاد بگیر. به نظرم در طراحی دیتابیس نیز مشکلاتی داری.

shadi khanum
سه شنبه 30 فروردین 1390, 20:53 عصر
فرض کن دو تا جدولت tbl1 و Tbl2
select * from tbl1 inner join tbl2 on id = id2 where salary <> salary2