当前位置:首页 > 数据库 > 数据库

此地不允许序号

优良自学吧提供此地不允许序号,此处不允许序号 --=========因查询中用了group by,所以不能直接用序列值==== select test.sequence.nextval,mgr,sum(sal) fro

此处不允许序号
  1. --=========因查询中用了group by,所以不能直接用序列值====
  2. selecttest.sequence.nextval,mgr,sum(sal)fromempgroupbymgr
  3. ORA-02287:此处不允许序号
  4. 果然,在外面再包一层就可以了
  5. SQL>selecttest_sequence.nextval,mgr,smfrom(selectmgr,sum(sal)smfromempgroupbymgr);
  6. NEXTVALMGRSM
  7. -------------------------
  8. 2778398275
  9. 2877821300
  10. 2976986550
  11. 3079025800
  12. 3175666000
  13. 3277881100
  14. 6rowsselected
  15. 看来序列使用时有限制的
  16. 看到书上说有这么多限制
  17. RestrictionsonSequenceValuesYoucannotuseCURRVALandNEXTVALinthe
  18. followingconstructs:
  19. ■AsubqueryinaDELETE,SELECT,orUPDATEstatement
  20. ■Aqueryofavieworofamaterializedview
  21. ■ASELECTstatementwiththeDISTINCToperator
  22. ■ASELECTstatementwithaGROUPBYclauseorORDERBYclause--这个就是我遇到的那种情况
  23. ■ASELECTstatementthatiscombinedwithanotherSELECTstatementwiththe
  24. UNION,INTERSECT,orMINUSsetoperator
  25. ■TheWHEREclauseofaSELECTstatement
  26. ■TheDEFAULTvalueofacolumninaCREATETABLEorALTERTABLEstatement
  27. ■TheconditionofaCHECKconstrain

(本文来自互联网,不代表搜站(http://www.ylzx8.cn/)的观点和立场)
本站所有内容来自互联网,若本站收录的信息无意侵犯了贵司版权,请给我们来信(ylzx8cn@163.com),我们会及时处理和回复,谢谢