PDA

View Full Version : انتخاب سطر هایی از یک جدول که در دو جدول دیگر وجود نداشته باشد



b.mahsa
چهارشنبه 28 بهمن 1388, 09:52 صبح
سلام
من میخوام سطر هایی از جدولم را انتخاب کنم که در دو جدول دیگه وجود نداشته باشد .
مثلا سطر هایی از table1 که در table2 ,table3 وجود ندارد .
ممنون میشم اگر راهنماییم کنین.

محمد سلیم آبادی
چهارشنبه 28 بهمن 1388, 09:55 صبح
چیزی شبیه به این:



select *
from table_1 as t1
where not exists
(select *
from table_2 as t2
where t1.id = t2.id)
and not exists
(select *
from table_3 as t3
where t3.id = t1.id)

b.mahsa
چهارشنبه 28 بهمن 1388, 10:05 صبح
ببخشید . query تون منطقش درسته ولی وقتی اجراش می کنم بدونه اینکه error بده اجرا میشه ولی سطر های درست را بر نمی گردونه...؟؟:متفکر: تمام سطر هایی که تو جدول 2و3 هم هست نمایش میده.:ناراحت:

b.mahsa
چهارشنبه 28 بهمن 1388, 10:08 صبح
وای من شرمنده ام .........:خجالت:
فیلد کلیدم روی id نبود اون رو عوض کردم درست شد.
:خجالت::خجالت::خجالت:

محمد سلیم آبادی
چهارشنبه 28 بهمن 1388, 10:12 صبح
یک راه دیگر(قابل استفاده در نسخه ی 2005 و بالاتر):


SELECT Col1, Col2, Col3 FROM Table_1
EXCEPT
(SELECT Col1, Col2, Col3 FROM Table_2
INTERSECT
SELECT Col2, Col2, Col3 FROM Table_3)