Dataset INTERSECT : INTERSECT « Data Set « SQL Server / T-SQL






Dataset INTERSECT


27>
28>
29> CREATE TABLE works_on       (emp_no       INTEGER NOT NULL,
30>                         project_no    CHAR(4) NOT NULL,
31>                         job CHAR (15) NULL,
32>                         enter_date    DATETIME NULL)
33>
34> insert into works_on values (1, 'p1', 'analyst', '1997.10.1')
35> insert into works_on values (1, 'p3', 'manager', '1999.1.1')
36> insert into works_on values (2, 'p2', 'clerk',   '1998.2.15')
37> insert into works_on values (2, 'p2',  NULL,     '1998.6.1')
38> insert into works_on values (3, 'p2',  NULL,     '1997.12.15')
39> insert into works_on values (4, 'p3', 'analyst', '1998.10.15')
40> insert into works_on values (5, 'p1', 'manager', '1998.4.15')
41> insert into works_on values (6, 'p1',  NULL,     '1998.8.1')
42> insert into works_on values (7, 'p2', 'clerk',   '1999.2.1')
43> insert into works_on values (8, 'p3', 'clerk',   '1997.11.15')
44> insert into works_on values (7, 'p1', 'clerk',   '1998.1.4')
45>
46> select * from works_on
47>
48> CREATE TABLE employee  (emp_no    INTEGER NOT NULL,
49>                         emp_fname CHAR(20) NOT NULL,
50>                         emp_lname CHAR(20) NOT NULL,
51>                         dept_no   CHAR(4) NULL)
52>
53> insert into employee values(1,  'Matthew', 'Smith',    'd3')
54> insert into employee values(2,  'Ann',     'Jones',    'd3')
55> insert into employee values(3,  'John',    'Barrimore','d1')
56> insert into employee values(4,  'James',   'James',    'd2')
57> insert into employee values(5,  'Elsa',    'Bertoni',  'd2')
58> insert into employee values(6,  'Elke',    'Hansel',   'd2')
59> insert into employee values(7,  'Sybill',  'Moser',    'd1')
60>
61> select * from employee
62> GO

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)
emp_no      project_no job             enter_date
----------- ---------- --------------- -----------------------
          1 p1         analyst         1997-10-01 00:00:00.000
          1 p3         manager         1999-01-01 00:00:00.000
          2 p2         clerk           1998-02-15 00:00:00.000
          2 p2         NULL            1998-06-01 00:00:00.000
          3 p2         NULL            1997-12-15 00:00:00.000
          4 p3         analyst         1998-10-15 00:00:00.000
          5 p1         manager         1998-04-15 00:00:00.000
          6 p1         NULL            1998-08-01 00:00:00.000
          7 p2         clerk           1999-02-01 00:00:00.000
          8 p3         clerk           1997-11-15 00:00:00.000
          7 p1         clerk           1998-01-04 00:00:00.000

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)

(1 rows affected)
emp_no      emp_fname            emp_lname            dept_no
----------- -------------------- -------------------- -------
          1 Matthew              Smith                d3
          2 Ann                  Jones                d3
          3 John                 Barrimore            d1
          4 James                James                d2
          5 Elsa                 Bertoni              d2
          6 Elke                 Hansel               d2
          7 Sybill               Moser                d1

(7 rows affected)
1>
2> SELECT emp_no FROM employee WHERE dept_no = 'd1'
3> INTERSECT
4> SELECT emp_no FROM works_on WHERE enter_date < '01.01.1999'
5> GO
emp_no
-----------
          3
          7

(2 rows affected)
1>
2> drop table employee
3> drop table works_on
4> GO
1>
           
       








Related examples in the same category