sql - 我的SQL语法有什么问题? (所有子查询均正确独立运行。)

我有以下查询,这给了我ORA-00935 missing expression错误,但我无法弄清楚自己一生中到底搞砸了什么。我尝试过分别运行查询的几乎每个部分,它们都可以分开工作,但是在一起我只会得到错误。我已经读到SQL缺少表达式错误,但是必须有一些更好的方法来编写此查询,这样它才能真正起作用。

Insert into V1144ENGINE.T_EDGES (EDGE_ID, VERSION, NODE1_ID, NODE2_ID, EDGE_TYPE_ID, CREATED_AT, WEIGHT, DELETED_AT)
   VALUES(V1144ENGINE.S_PK_EDGES.NEXTVAL,0,
       select NODE_ID from V1144ENGINE.T_NODES where NODE_NAME = 'Understand composition of an element',
       select NODE_ID from V1144ENGINE.T_NODES where NODE_NAME = 'Understand atoms as smallest units of matter', 3, SYSDATE, 1, NULL);

我独立运行查询的各个部分,所有这些都返回了我想要的结果。例如;
select V1144ENGINE.S_PK_EDGES.NEXTVAL from dual;

select NODE_ID from V1144ENGINE.T_NODES where NODE_NAME = 'Understand composition of an element'

我正在使用Oracle 11g,如果有帮助的话。

最佳答案

我猜想您需要在子查询周围加上括号。