ORA-00913: too many values 错误分析

ORA-00913: too many values 错误分析

今日接收他人代码,新增时添加了一个新的字段。不料程序保存调用sql后报了错。

  • 错误信息如下

  • ORA-00913: too many values


错误分析

  • 查了下是因为insert语句的指定列和Values 后的数据不配。insert 给了七个列,values 却出现了八个字段,所以各位以后写sql的时候要细心点呀。

而从网上搜索到的问题不仅仅是在insert时会出现此错误。
下面是一个查询例子:

SQL> SELECT MIN(p_retailprice), MAX(p_retailprice)FROM PART
LEFT JOIN LINEITEM
ON PART.P_PARTKEY=LINEITEM.L_LINENUMBER
WHERE L_PARTKEY NOT IN
(SELECT MAX(L_DISCOUNT),MIN(L_EXTENDEDPRICE) FROM LINEITEM
WHERE L_QUANTITY <200);

上述sql错误分析:

SELECT MIN(p_retailprice), MAX(p_retailprice)
FROM PART LEFT JOIN LINEITEM ON PART.P_PARTKEY=LINEITEM.L_LINENUMBER
WHERE L_PARTKEY NOT IN –这里是一个字段
(SELECT MAX(L_DISCOUNT),MIN(L_EXTENDEDPRICE) – 这里select的结果是2个值,与前面的不匹配
FROM LINEITEM
WHERE L_QUANTITY <200);

提示比较明显
ORA-00913: too many values

猜你喜欢

转载自blog.csdn.net/q512224549/article/details/55510949