Hi, thanks for reply, it returns all rows though from the CONTNO table which is not what I need. please see some scripts below to create the hire table and the calendar table:
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370768', 'GRADING', '2019-01-10 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370768', 'TLBUCKET24', '2019-01-10 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370768', 'TLBUCKET30', '2019-01-10 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370768', 'TLBUCKET42', '2019-01-10 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000353555', '1030/031', '2019-01-15 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370785', 'RUBTRACKS13', '2019-01-15 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370785', 'GRADING', '2019-01-16 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370785', 'TLBUCKET24', '2019-01-16 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370785', 'TLBUCKET42', '2019-01-16 00:00:00.000')
INSERT INTO CONTITEMS (CONTNO, ITEMNO, HIREDATE)
VALUES ('0000370847', '1040/170', '2019-01-18 00:00:00.000');
CREATE TABLE Calendar (CalCode VARCHAR(2) NOT NULL PRIMARY KEY, CalDate DATE NOT NULL, CalWork BIT NOT NULL, CalName VARCHAR(9) NOT NULL, CalDay INT NOT NULL);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-10', 1, 'Thursday', 10);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-11', 1, 'Friday', 11);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-12', 0, 'Saturday', 12);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-13', 0, 'Sunday', 13);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-14', 1, 'Monday', 14);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-15', 1, 'Tuesday', 15);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-16', 1, 'Wednesday', 16);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-17', 1, 'Thursday', 17);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-18', 1, 'Friday', 18);
INSERT INTO Calendar (CalCode, CalDate, CalWork, CalName, CalDay)
VALUES ('BH', '2019-01-19', 0, 'Saturday', 19);
For the first query, I want to return the records for the next working day so the output would be:
+------------+------------+-------------------------+
| CONTNO | ITEMNO | HIREDATE |
+------------+------------+-------------------------+
| 0000370768 | TLBUCKET42 | 2019-01-10 00:00:00.000 |
| 0000370768 | GRADING | 2019-01-10 00:00:00.000 |
| 0000370768 | TLBUCKET24 | 2019-01-10 00:00:00.000 |
| 0000370768 | TLBUCKET30 | 2019-01-10 00:00:00.000 |
+------------+------------+-------------------------+
For the second query, I want to see the records for the next 5 working days so the result would be:
+------------+-------------+-------------------------+
| CONTNO | ITEMNO | HIREDATE |
+------------+-------------+-------------------------+
| 0000353555 | 1030/031 | 2019-01-15 00:00:00.000 |
| 0000370768 | TLBUCKET42 | 2019-01-10 00:00:00.000 |
| 0000370768 | GRADING | 2019-01-10 00:00:00.000 |
| 0000370768 | TLBUCKET24 | 2019-01-10 00:00:00.000 |
| 0000370768 | TLBUCKET30 | 2019-01-10 00:00:00.000 |
| 0000370785 | GRADING | 2019-01-16 00:00:00.000 |
| 0000370785 | RUBTRACKS13 | 2019-01-15 00:00:00.000 |
| 0000370785 | TLBUCKET42 | 2019-01-16 00:00:00.000 |
| 0000370785 | TLBUCKET24 | 2019-01-16 00:00:00.000 |
+------------+-------------+-------------------------+
The record for OONTNO 0000370847 should not show as it is outside the next 5 working days.
Thanks
Martyn