آموزش SQL server - دستور INTERSECT - درس هفدهم
مانند دستور union این دستور نیز با دو جمله SQL کار میکند . اما تفاوت اینجاست که دستور union در اصل مانند یک OR کار میکند و تمام رکوردهای غیر تکراری را بر میدارد . اما این دستور مانند AND کار میکند و رکورد های مشترک را بر میدارد .
قالب دستوری :
[SQL Statement 1]
INTERSECT
[SQL Statement 2]
مثال : جداول زیر را در نظر بگیرید . ما میخواهیم تمام تاریخ هایی را که در آن معامله ای انجام شده است استخراج کنیم . بنابرین از کد زیر استفاده میکنیم . تفاوت را با union مقایشه کنید .
Table Store_Information
|
store_name |
Sales |
Date |
|
|
$1500 |
Jan-05-1999 |
|
|
$250 |
Jan-07-1999 |
|
|
$300 |
Jan-08-1999 |
|
|
$700 |
Jan-08-1999 |
Table Internet Sales
|
Date |
Sales |
|
Jan-07-1999 |
$250 |
|
Jan-10-1999 |
$535 |
|
Jan-11-1999 |
$320 |
|
Jan-12-1999 |
$750 |
SELECT Date FROM Store_Information
INTERSECT
SELECT Date FROM Internet_Sales
نتیجه :
|
Date |
|
Jan-07-1999 |