最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Oracle数据库Ora-01791 不是Selected表达式
时间:2022-06-29 10:03:52 编辑:袖梨 来源:一聚教程网
今天在调查原代码时遇到一处错误,提示”SELECT式が?o?郡扦?rdquo;百思不得其解。后来发现
是”DISTINCT”关键字在作祟。
我原先的sql语句
代码如下 | 复制代码 |
|
原句部分代码如下
+ expand source帮助
123456 SELECT DISTINCT F200.PLACE_NO AS PLACE_NO --省略若干代码 ORDER BY F200.UP_DATE || F200.UP_TIME ,F200.YOYAKU_NO
去掉DISTINCT就搞定了~
正确的代码
正确的解决办法:
代码如下 | 复制代码 |
Select GoodsId,Barcode,DepotId,GoodsName from (Select distinct GoodsId,Barcode,DepotId,GoodsName,SellDate from sa_sale where depotid='11' ) order by selldate |
注意:如果在ORDER BY中指定多个列,结果将先按照子句中的第一个列排序,然后第二个,依此类推
在SELECT中未出现的列名也可用于ORDER BY 子句中,主要TABLE中有就行,但如果SELECT子句中出现了DISTINCT关键字,则只能用出现过的列名,而且如果SELECT子句中使用了任何运算符,在ORDER BY 子句中必须保持和SELECT子句中表达式完全一致,否则出现ORA-01791 ERROR
相关文章
- 《使命召唤:黑色行动6》战役双倍下注任务攻略 11-05
- 《使命召唤:黑色行动6》战役敏锐的眼睛任务攻略 11-05
- 《使命召唤:黑色行动6》战役请勿吸烟任务攻略 11-05
- 《怪物猎人:荒野》游戏气候介绍 11-05
- 《怪物猎人:荒野》丰饶期气候介绍 11-05
- 《龙腾世纪:影障守护者》游侠不同职业区别介绍 11-05