ورود

View Full Version : درخواست کد برای نمایش رکوردهای مشترک بین 6 جدول



reza.zarchi
یک شنبه 26 مرداد 1393, 12:14 عصر
سلام
من به مشکلی برخوردم که امیدوارم شما دوستان بتونید کمکم کنید.
من 6 تا جدول دارم به نام های temp1 تا temp6 و همچنین یک جدول به نام لیست که اینا همه رکوردهای مشترک باهم دارن.
میخواستم یک کدی داشته باشم که تمام رکوردهای جدول list که در همه شش جدول مشترک هستند را نمایش بده. البته تکراری نباشن. یعنی برای هر رکورد تکراری فقط یک بار نمایش داده بشن.
باتشکر...

Mousavmousab
سه شنبه 28 مرداد 1393, 16:21 عصر
سلام



سینتکس کدی که من نوشتم زیاد درست نیست ولی روالش این طوریه



create procedure GetSimilarities(@condition int)
as
begin

select DISTINCT t1.id
from temp1 t1
where tr.id=@condition

union

select DISTINCT t2.id
from temp1 t2
where tr.id=@condition

union

select DISTINCT t3.id
from temp1 t3
where tr.id=@condition

union

select DISTINCT t4.id
from temp1 t4
where tr.id=@condition

union

select DISTINCT t5.id
from temp1 t5
where tr.id=@condition

union

select DISTINCT t6.id
from temp1 t6
where tr.id=@condition
end

)







اگر 6 تا جدول داشته باشی که هر 6 جدول یک ID فیلد های مشترک و برابر و از یک نوع داشته باشند. روال بالا درست کار خواهد کرد.

توجه کنید که کلمه Distict برای این است که تکراری را را حذف کند.
شرط بر اساس یک فیلدی باید باشد که من شرط را روی فیلد ID قرار دادم.
موفق باشید.

reza.zarchi
سه شنبه 18 شهریور 1393, 11:21 صبح
خیلی ممنون از شما. تونستم با یک دستور select کاری که میخواستمو انجام بدم به شکل زیر
SELECT distinct * FROM temp1,temp2,temp3,temp4,temp5,temp6 WHERE temp1.id = temp2.id AND temp1.id = temp3.id AND temp1.id = temp4.id AND temp1.id = temp5.id AND temp1.id = temp6.id