以下SQL语句有效,并按预期执行:
SELECT r1.rs_objectidentifier AS parent,
r2.rs_objectidentifier AS child,
"satisfies" AS relation,
0 AS root,
0 AS leaf
FROM rsdata r1,
rsdata r2
WHERE r1.weeknumber="1410"
AND r1.weeknumber=r2.weeknumber
AND r1.rs_variant=r2.rs_variant
AND r1.rs_inrsobjectidentifieronelevel != ""
AND r1.rs_inrsobjectidentifieronelevel != "Unknown"
AND find_in_set(r2.rs_objectidentifier, r1.rs_inrsobjectidentifieronelevel)
UNION
SELECT rsdata.rs_objectidentifier AS parent,
"" AS child,
"satisfies" AS relation,
0 AS root,
0 AS leaf
FROM rsdata
WHERE rsdata.weeknumber="1410"
AND (rsdata.RS_InRSObjectIdentifierOneLevel = ""
OR rsdata.RS_InRSObjectIdentifierOneLevel = "Unknown")当我用以下insert语句作为select语句的前缀时,我得到一个SQL语法错误:
insert into traceabilityselect中的列与表中的字段匹配(据我所知)。该表如下所示:
CREATE TABLE `traceability` ( `Parent` varchar(50) default NULL,
`Child` varchar(50) default NULL, `Relation` varchar(20) default
NULL, `Root` tinyint(1) default NULL, `Leaf` tinyint(1) default
NULL, UNIQUE KEY `Traceability_UI1` (`Parent`,`Child`,`Relation`) )
ENGINE=MyISAM DEFAULT CHARSET=latin1为什么在添加insert语句时出现MySQL语法错误?
下面的错误(信息性不强)是...
1064 - You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near 'insert into
traceability select r1.rs_objectidentifier as parent, r2.rs_objec' at line 2发布于 2014-03-05 17:15:06
尝尝这个
insert into traceability(Parent,Child,Relation,Root,Leaf) Select .....发布于 2014-03-05 17:47:33
好的。解决方案非常简单。SQL是一组SQL语句的一部分。上面发布的语句缺少一个;(用于终止该语句),因此运行到下一条语句,因此引发语法错误...羞愧地低下头
https://stackoverflow.com/questions/22192566
复制相似问题