Datos tabla Productos
Esta es la consulta que deseo pero no me arroja datos.
SELECT
p.id,
p.nombre,
p.descripcion,
p.precio,
p.marca_id,
p.categoria_id
FROM
producto p, marca m, categoria c
WHERE p.marca_id=m.nombre
AND p.categoria_id=c.nombre
AND Upper(p.nombre) LIKE upper ('%so%');
Ahora esta consulta si me arroja datos.
SELECT
p.id,
p.nombre,
p.descripcion,
p.precio,
p.marca_id,
p.categoria_id
FROM
producto p, marca m, categoria c
WHERE p.marca_id=m.id
AND p.categoria_id=c.id
AND Upper(p.nombre) LIKE upper ('%so%');
Me doy cuenta que solo reconoce las llaves primarias de cada tabla.
DDL Del workspace
CREATE TABLE categoria (
id VARCHAR2(25 CHAR) NOT NULL,
nombre VARCHAR2(50 CHAR)
);
ALTER TABLE categoria ADD CONSTRAINT categoria_pk PRIMARY KEY ( id );
CREATE TABLE marca (
id VARCHAR2(25 CHAR) NOT NULL,
nombre VARCHAR2(50 CHAR)
);
ALTER TABLE marca ADD CONSTRAINT marca_pk PRIMARY KEY ( id );
CREATE TABLE producto (
id VARCHAR2(50 CHAR) NOT NULL,
nombre VARCHAR2(50 CHAR),
descripcion VARCHAR2(100 CHAR),
precio VARCHAR2(100 CHAR),
marca_id VARCHAR2(25 CHAR) NOT NULL,
categoria_id VARCHAR2(25 CHAR) NOT NULL
);
ALTER TABLE producto ADD CONSTRAINT producto_pk PRIMARY KEY ( id );
CREATE TABLE usuario (
nombre VARCHAR2(50 CHAR),
correo VARCHAR2(50 CHAR),
contraseña VARCHAR2(25 CHAR) NOT NULL
);
ALTER TABLE usuario ADD CONSTRAINT usuario_pk PRIMARY KEY ( contraseña );
ALTER TABLE producto
ADD CONSTRAINT producto_categoria_fk FOREIGN KEY ( categoria_id )
REFERENCES categoria ( id );
ALTER TABLE producto
ADD CONSTRAINT producto_marca_fk FOREIGN KEY ( marca_id )
REFERENCES marca ( id );
ALTER TABLE producto
ADD CONSTRAINT producto_categoria_fk FOREIGN KEY ( categoria_id )
REFERENCES categoria ( id );
ALTER TABLE producto
ADD CONSTRAINT producto_marca_fk FOREIGN KEY ( marca_id )
REFERENCES marca ( id );
Espero me ayuden a cumplir mi objetivo. Gracias.