Hi I'm trying to do a query to print the users which do an action on a specific month on ORACLE SQL DEVELOPER.
Here are the tables:
CREATE TABLE USUARIO2 (
CODIGO NUMBER(10) CONSTRAINT USUARIO_PK PRIMARY KEY,
NOMBRE VARCHAR(50) CONSTRAINT NOM_USUARIO_NN NOT NULL,
TELEFONO VARCHAR2(12),
DIRECCION VARCHAR2(100)
);
CREATE TABLE SACA (
COD_USUARIO NUMBER(10),
COD_EJEMPLAR NUMBER(10),
FECHA_PRES DATE DEFAULT SYSDATE,
FECHA_DEV DATE,
CONSTRAINT SACA_PK PRIMARY KEY (COD_USUARIO, COD_EJEMPLAR, FECHA_PRES),
CONSTRAINT USUARIO_FK FOREIGN KEY (COD_USUARIO) REFERENCES USUARIO2(CODIGO) ON DELETE CASCADE,
CONSTRAINT EJEMPLAR_FK FOREIGN KEY (COD_EJEMPLAR) REFERENCES EJEMPLAR(CODIGO) ON DELETE CASCADE
);
Here are the values of SACA:
INSERT INTO SACA VALUES (123,778899, '01-01-2017','02-05-2017');
INSERT INTO SACA VALUES (123,112233, '01-01-2017','02-05-2017');
INSERT INTO SACA VALUES (234,882143,'04-01-2017','04-07-2017');
INSERT INTO SACA VALUES (234,777722,'04-01-2017','04-07-2017');
INSERT INTO SACA VALUES (345,976543, '01-01-2017','02-05-2017');
INSERT INTO SACA VALUES (456,446733,'04-01-2017','04-07-2017');
INSERT INTO SACA VALUES (567,778899, '01-01-2017','02-05-2017');
INSERT INTO SACA VALUES (890,222266,'04-01-2017','04-07-2017');
And this is the query. i would like to query the users which get a book on a specific month (05) from column FECHA_DEV
. So here is the query:
SELECT usuario2.nombre
FROM usuario2
JOIN saca ON usuario2.codigo=saca.cod_usuario WHERE SUBSTR(FECHA_DEV,3,5) IN ('05');
The query is empty, but if a change the values, and ask from the first and last position it works.
¿So which are the index of the month for the DATE format?