以下查询始终返回#1054-'on子句'中的未知列'T_RELATIF_SESS.REL_COM_ID'
SELECT
`T_FORMATIONS`.`FOR_ID`,
`T_FORMATIONS`.`FOR_TITRE`,
`T_FORMATIONS`.`FOR_NIVEAU`,
`T_FORMATIONS`.`FOR_MAX_PART`,
`T_RELATIF_SESS`.`REL_COM_ID`,
`T_RELATIF_SESS`.`REL_SES_ID`,
`T_SESSIONS`.`SES_ID`,
`T_SESSIONS`.`SES_TITRE`,
`T_SESSIONS`.`SES_TYPE`,
`T_SESSIONS`.`SES_ADRESSE`,
`T_SESSIONS`.`SES_NPA`,
`T_SESSIONS`.`SES_LIEU`,
`T_SESSIONS`.`SES_PRIX_SPECIAL`,
`T_SESSIONS`.`SES_VAL_PRIX_SPECIAL`,
`T_SESSIONS`.`SES_PRIX_SPEC_EXP`,
`T_SESSIONS`.`SES_SUPP_COURS_INCL`,
`T_SESSIONS`.`SES_SUPP_COURS_ADD`,
`T_SESSIONS`.`SES_PRIX_SUPP_COURS_ADD`,
`T_SESSIONS`.`SES_HORAIRE_SPECIAL`,
`T_SESSIONS`.`SES_REMARQUES`,
`T_SESSIONS`.`SES_REC_ID`,
`T_COURS`.`COU_ID`,
`T_COURS`.`COU_DATE`,
(SELECT `COU_DATE` FROM `T_COURS` WHERE `T_COURS`.`COU_SES_ID` = `T_SESSIONS`.`SES_ID` ORDER BY `COU_DATE` ASC LIMIT 1) AS `PREMIERCOURS`,
(SELECT `COU_DATE` FROM `T_COURS` WHERE `T_COURS`.`COU_SES_ID` = `T_SESSIONS`.`SES_ID` ORDER BY `COU_DATE` DESC LIMIT 1) AS `DERNIERCOURS`
FROM `T_COURS`
INNER JOIN `T_COMMANDES` ON `T_RELATIF_SESS`.`REL_COM_ID` = `T_COMMANDES`.`COM_ID`
INNER JOIN `T_RELATIF_SESS` ON `T_SESSIONS`.`SES_ID` = `T_RELATIF_SESS`.`REL_SES_ID`
INNER JOIN `T_SESSIONS` ON `T_COURS`.`COU_SES_ID` = `T_SESSIONS`.`SES_ID`
INNER JOIN `T_FORMATIONS` ON `T_SESSIONS`.`SES_FOR_ID` = `T_FORMATIONS`.`FOR_ID`
WHERE `T_COMMANDES`.`COM_ID`=19
在添加之前,此查询工作正常
INNER JOIN `T_COMMANDES` ON `T_RELATIF_SESS`.`REL_COM_ID` = `T_COMMANDES`.`COM_ID`
INNER JOIN `T_RELATIF_SESS` ON `T_SESSIONS`.`SES_ID` = `T_RELATIF_SESS`.`REL_SES_ID`
和
WHERE `T_COMMANDES`.`COM_ID`=19
T_RELATIF_SESS
是名为“ T_SESSIONS”和“ T_COMMANDES”的表之间的关联表。我试图重写查询很多次,但仍然收到此错误,我真的不明白为什么。每个字段都存在于我的数据库中。
我知道这可能很简单,但确实让我头疼。有人可以帮我忙还是可以向我解释我做错了什么?将会非常感激!
非常感谢你!
最佳答案
因此,根据您的描述,您尝试不运行脚本
INNER JOIN `T_COMMANDES` ON `T_RELATIF_SESS`.`REL_COM_ID` = `T_COMMANDES`.`COM_ID`
INNER JOIN `T_RELATIF_SESS` ON `T_SESSIONS`.`SES_ID` = `T_RELATIF_SESS`.`REL_SES_ID`
并且可以正常工作,但是不能使用该脚本?尝试按顺序进行操作,因为在您第一次进行内部联接时,您正在尝试将表(T_COMMANDES)与下一个要联接的表(T_RELATIF_SESS)联接。
因此,请尝试:
INNER JOIN `T_SESSIONS` ON `T_COURS`.`COU_SES_ID` = `T_SESSIONS`.`SES_ID`
INNER JOIN `T_FORMATIONS` ON `T_SESSIONS`.`SES_FOR_ID` = `T_FORMATIONS`.`FOR_ID`
INNER JOIN `T_RELATIF_SESS` ON `T_SESSIONS`.`SES_ID` = `T_RELATIF_SESS`.`REL_SES_ID`
INNER JOIN `T_COMMANDES` ON `T_RELATIF_SESS`.`REL_COM_ID` = `T_COMMANDES`.`COM_ID`