我正在尝试迁移到新数据库,并尝试通过在“TMP”列下保存以前的ID来保留父子层次结构问题是当我尝试通过选择所述TMP列来获取相关ID时MySQL Insert Query #1093
错误。
以下是一些要查看的代码:
INSERT INTO UnitTree (DealerID, Label, TMP) VALUES
((SELECT ID FROM Dealer WHERE Name='Dealer1'),'Folder1', (SELECT ID FROM UnitTree WHERE TMP=2)),
((SELECT ID FROM Dealer WHERE Name='Dealer2'),'Folder2',(SELECT ID FROM UnitTree WHERE TMP=3)),
((SELECT ID FROM Dealer WHERE Name='Dealer3'),'Unit1',(SELECT ID FROM UnitTree WHERE TMP=4));
注意:所有子查询都在唯一列上,并且只返回1个结果
我已经找到了答案并且没有找到答案,所以如果有答案我会道歉。谢谢你的帮助!
答案 0 :(得分:0)
看这个:
SELECT ID FROM Dealer WHERE Name='Enertia'
此查询不在db ..中返回此名称的id。
答案 1 :(得分:0)
它通过以下查询对我有用:
INSERT INTO mydata (col1, col2)
values(123,(SELECT col2 FROM (SELECT col2 FROM mydata) a));