Cause: The SQL statement requires two sets of values equal in number. This error occurs when the second set contains more items than the first set. For example, the subquery in a WHERE or HAVING clause may return too many columns, or a VALUES or SELECT clause may return more columns than are listed in the INSERT. Action: Check the number of items in each set and change the SQL statement to make them equal. 

解决方案 »

  1.   

    在需要一个值的时,你有多个值,这样情况多出现在子查询中如:
    select * from table1 where aa=(select kk from table2)
    在处aa只能有一个值,可是在select kk from table2语句中返回多个值改为
    select * from table1 where aa in (select kk from table2)
    就正确了
      

  2.   

    自己解决了,是TOAD的问题,格式没有按照标准格式出的错
    用别的都没有问题
    谢谢各位了