ORA 01791错误

ORA 01791错误提示的是“ORA-01791: 不是 SELECTed 表达式”:

原因:sql中了用了DISTINCT关键字去重,但是order by后面跟的字段并没有出现在查询的列中,什么意思?看例子

例子: 错误:SELECT DISTINCT a.name,a.code from a inner join b on a.pk=b.pk ORDER BY  a.date

         正确:SELECT DISTINCT a.date, a.name,a.code from a inner join b on a.pk=b.pk ORDER BY  a.date

总结:实用DISTINCT关键时,只能排序前面出现过的字段

StayHungry 求知若渴 StayFoolish 放低姿态
原文地址:https://www.cnblogs.com/wujunjie/p/6112775.html