在mysql中运行此sql查询:
INSERT INTO Test_id_isbnyear
SELECT I.id, I.isbn, Y.year
FROM Prod_id_isbn AS I
LEFT JOIN Prod_id_year AS Y ;
抛出此错误:
1064 - 您的SQL语法(...)附近有错误''在第4行
如何收到有关'"''如果我的查询中没有这样的东西?
答案 0 :(得分:0)
你需要加入你的价值观(我假设 XdmValue matchList = xPathSelector.evaluate();
XdmItem firstItem = matchList.itemAt(0);
if (firstItem instanceof XdmNode) {
XdmNode xdmNode = (XdmNode) firstItem;
XdmNodeKind nodeKind = xdmNode.getNodeKind();
if (nodeKind == XdmNodeKind.ELEMENT) {
return xdmNode.toString();
}
}
return firstItem.getStringValue();
为这个答案)。
ON I.ID = Y.I_ID
答案 1 :(得分:0)
不可否认,在这种情况下,错误消息并非超级。规则可能有例外,但根据我的经验,通常意味着语法错误位于查询的最后。在这种情况下,它是:
SELECT I.id, I.isbn, Y.year
FROM Prod_id_isbn AS I
LEFT JOIN Prod_id_year AS Y
-- missing "ON" clause
应该是这样的:
SELECT I.id, I.isbn, Y.year
FROM Prod_id_isbn AS I
LEFT JOIN Prod_id_year AS Y
ON I.SomeField = Y.SomeField