No se necesita una subconsulta sino un JOIN donde relaciones el DI de categoría de una tabla ocn el ID de categoría de la otra.
Algo así como:
Código SQL:
Ver originalSELECT *
FROM PRODUCTOS INNER JOIN CATEGORIA USIGNG (IDCATEGORIA);
Esto si el nombre de campo es el mismo en ambas tablas. Sino:
Código SQL:
Ver originalSELECT *
FROM PRODUCTOS P INNER JOIN CATEGORIA C ON P.IDCATEG = C.IDCAT;
No pongas, repito, no pongas el "P.IDCATEG = C.IDCAT;" en al WHERE, no es eficiente al ejecutar porque el parser de l abase de datos no lo puede optimizar.