我在MYSQL中有一个奇怪的问题:
Error in query (1054): Unknown column db2.d.id_d in 'on clause'
我的查询是:
INSERT INTO db1.p (db1.f)
(SELECT CONCAT(db2.d.df, '_', db2.dp.dfp) AS dfp
FROM db2.dp
LEFT OUTER JOIN db2.d ON db2.d.id = db2.dp.id_d)
UNION
(SELECT CONCAT(db3.d.df, '_', db3.dp.dfp) AS dfp
FROM db3.dp
LEFT OUTER JOIN db3.d ON db3.d.id = db3.dp.id_d)
我可以确认你的db2.d.id_d列是否存在错误 来自UNION,因为请求的第一部分:
INSERT INTO db1.p (db1.f)
(SELECT CONCAT(db2.d.df, '_', db2.dp.dfp) AS dfp
FROM db2.dp
LEFT OUTER JOIN db2.d ON db2.d.id = db2.dp.id_d)
完美地工作。
在其他线程上,我看到所有请求都有效但没有INNER JOIN。 关注INNER JOIN的问题。 我不知道......