40
私はこのようになりますクエリを持っている:DISTINCTキーワードを使用すると、このエラーが発生しますない選択された式
次の例外になりSELECT DISTINCT share.rooms
FROM Shares share
left join share.rooms.buildingAdditions.buildings.buildingInfoses as bi
... //where clause omitted
ORDER BY share.rooms.floors.floorOrder, share.rooms.roomNumber,
share.rooms.firstEffectiveAt, share.shareNumber, share.sharePercent
:私は削除した場合
Caused by: org.hibernate.exception.SQLGrammarException: ORA-01791: not a SELECTed expression
DISTINCTキーワードを指定すると、クエリは問題なく実行されます。 order by句を削除すると、クエリは問題なく実行されます。残念ながら、私は、重複なしで順序付けられた結果セットを得るように見えることはできません。
お返事ありがとう@Lamak。なぜDISTINCTがDISTINCTなしでそれらを無視しないので、DISTINCTがdbに他の列を無視させるのかはわかりません。しかし、それが重要であるとすれば、どのように順序付けされた重複した自由結果セットを得ることができますか? – Ken
あなたはどのようにそれらを注文したいですか? 'share.rooms'カラムに対して重複した空き結果が必要な場合は、同じ部屋**には' floorOrder'や 'roomNumber'や他のカラムの値が異なるかもしれないので、あなたはどうしたいですか?それらの最小値によって注文されるべきか?、最大? – Lamak
私は今参照してください。再度、感謝します。 – Ken