Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

How to check if a range of dates is available ?

Christian Pitet 2Mar 18 2025 — edited Mar 18 2025

Hi,

Under Oracle 19c, I have a table VE_RESERVATION which stores the dates of of booking (reservation) of a camping. I want to check if a range of dates is available (not booked). The column DATE_RESERVATION is the begining of the range. The column DATE_FIN_RESERVATION is the end of the date range. I would like the sql command returns no lines if a range of date is available. If a range of dates is not available, it shoud return 1.

Here are the create table and insert statements example.

CREATE TABLE VE_RESERVATION (
   ID    INT,
   PLACES_DISPONIBLES    VARCHAR(512),
   NOM    VARCHAR(512),
   PRENOM    VARCHAR(512),
   COURRIEL    VARCHAR(512),
   TELEPHONE    INT,
   DATE_RESERVATION    VARCHAR(512),
   NUITES    INT,
   NOMBRE_ADULTES    VARCHAR(512),
   NOMBRE_ENFANTS    VARCHAR(512),
   COMMENTAIRES    VARCHAR(512),
   NOMBRE_ANIMAUX    VARCHAR(512),
   HEBERGEMENT    VARCHAR(512),
   NOM_UTILISATEUR    VARCHAR(512),
   USER_NAME    VARCHAR(512),
   DATE_FIN_RESERVATION    VARCHAR(512),
   ADRESSE    VARCHAR(512)
);

Inserts :

INSERT INTO VE_RESERVATION
(ID, PLACES_DISPONIBLES, NOM, PRENOM, COURRIEL, TELEPHONE, DATE_RESERVATION, NUITES, NOMBRE_ADULTES, NOMBRE_ENFANTS, COMMENTAIRES, NOMBRE_ANIMAUX, HEBERGEMENT, NOM_UTILISATEUR, USER_NAME, DATE_FIN_RESERVATION, ADRESSE) VALUES ('8', '', 'PITET', 'CHRISTIAN', 'cpitet@gmail.com', '0671642779', '', '', '', '', '', '', '', '', 'PITET', '', '4, avenue Jean Mermoz');
INSERT INTO VE_RESERVATION (ID, PLACES_DISPONIBLES, NOM, PRENOM, COURRIEL, TELEPHONE, DATE_RESERVATION, NUITES, NOMBRE_ADULTES, NOMBRE_ENFANTS, COMMENTAIRES, NOMBRE_ANIMAUX, HEBERGEMENT, NOM_UTILISATEUR, USER_NAME, DATE_FIN_RESERVATION, ADRESSE) VALUES ('4', '', 'PITET', 'CHRISTIAN', 'cpitet@gmail.com', '0671642779', '01/03/25', '10', '', '', '', '', '', '', 'PITET', '11/03/25', '');
INSERT INTO VE_RESERVATION (ID, PLACES_DISPONIBLES, NOM, PRENOM, COURRIEL, TELEPHONE, DATE_RESERVATION, NUITES, NOMBRE_ADULTES, NOMBRE_ENFANTS, COMMENTAIRES, NOMBRE_ANIMAUX, HEBERGEMENT, NOM_UTILISATEUR, USER_NAME, DATE_FIN_RESERVATION, ADRESSE) VALUES ('5', '-4', 'PITET', 'CHRISTIAN', 'cpitet@gmail.com', '0671642779', '17/03/25', '2', '', '', '', '', '', '', 'PITET', '19/03/25', '');
INSERT INTO VE_RESERVATION (ID, PLACES_DISPONIBLES, NOM, PRENOM, COURRIEL, TELEPHONE, DATE_RESERVATION, NUITES, NOMBRE_ADULTES, NOMBRE_ENFANTS, COMMENTAIRES, NOMBRE_ANIMAUX, HEBERGEMENT, NOM_UTILISATEUR, USER_NAME, DATE_FIN_RESERVATION, ADRESSE) VALUES ('9', '0', 'PITET', 'CHRISTIAN', 'cpitet@gmail.com', '0671642779', '', '3', '', '', '', '', '', '', 'PITET', '', '4, avenue Jean Mermoz');
INSERT INTO VE_RESERVATION (ID, PLACES_DISPONIBLES, NOM, PRENOM, COURRIEL, TELEPHONE, DATE_RESERVATION, NUITES, NOMBRE_ADULTES, NOMBRE_ENFANTS, COMMENTAIRES, NOMBRE_ANIMAUX, HEBERGEMENT, NOM_UTILISATEUR, USER_NAME, DATE_FIN_RESERVATION, ADRESSE) VALUES ('7', '', 'PITET', 'CHRISTIAN', 'cpitet@gmail.com', '0671642779', '17/03/25', '3', '', '', '', '', '', '', 'PITET', '19/03/25', '');
INSERT INTO VE_RESERVATION (ID, PLACES_DISPONIBLES, NOM, PRENOM, COURRIEL, TELEPHONE, DATE_RESERVATION, NUITES, NOMBRE_ADULTES, NOMBRE_ENFANTS, COMMENTAIRES, NOMBRE_ANIMAUX, HEBERGEMENT, NOM_UTILISATEUR, USER_NAME, DATE_FIN_RESERVATION, ADRESSE) VALUES ('6', '', 'PITET', 'CHRISTIAN', 'cpitet@gmail.com', '0671642779', '17/03/25', '10', '', '', '', '', '', '', 'PITET', '19/03/25', '');

Best regards.

Comments

Post Details

Added on Mar 18 2025
1 comment
81 views