sql >> Base de Datos >  >> RDS >> Mysql

¿Hay algún código incorrecto con mi consulta para unirme a la tabla?

No sé cuál es el problema exacto, pero tu WHERE cláusula tiene un problema:

WHERE IPK IS NOT NULL

No está permitido hacer referencia a un alias de columna en el WHERE cláusula, porque su valor puede no ser determinado todavía. En su lugar, deberías usar esto:

WHERE akdhis_kelanjutanstudi.IPK IS NOT NULL

Actualización:

Los paréntesis que usó en su vista original parecen extraños, innecesarios y posiblemente incorrectos. Intenta usar lo siguiente:

CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost`
    SQL SECURITY DEFINER VIEW aIPK AS
SELECT t4.Kode AS Fakultas,
       t3.Kode AS Departemen,
       t1.NIM AS NIM,
       t1.TahunMasuk AS TahunMasuk,
       t6.IPK AS IPK
FROM akdmst_mahasiswamagister t1
LEFT JOIN akdmst_mayor t2
    ON t1.MayorID = t2.ID
LEFT JOIN ipbmst_departemen t3
    ON t2.DepartemenID = t3.ID
LEFT JOIN ipbmst_fakultason t4
    ON t3.FakultasID = t4.ID
LEFT JOIN ipbmst_orang t5
    ON t1.NIM = t5.NIMS2Key
LEFT JOIN akdhis_kelanjutanstudi t6
    ON t6.NIM = t5.NIMS2Key
WHERE t6.IPK IS NOT NULL
ORDER BY NIM
LIMIT 100;