ai đó có thể giải thích cho tôi tại sao truy vấn này yêu cầu mệnh đề GROUP BY trong Oracle trong khi hoàn toàn tốt trong MSSQL, MySQL, Postgresql?Tại sao truy vấn này yêu cầu nhóm theo mệnh đề trong Oracle
select count(*)/(select count(*) from dual)from dual
Oracle phàn nàn
"[Error] Execution (1: 27): ORA-00937: not a single-group group function"
Nếu tôi thay đổi nó và thêm nhóm giả bởi như thế này
select count(*)/(select count(*) from dual)from dual
group by null
thì đó là tốt cho Oracle. Tại sao Oracle yêu cầu nhóm này?
Bạn có thể vui lòng cung cấp truy vấn thực, ví dụ của bạn không có ý nghĩa gì không. –
Tôi đã cung cấp cái này để làm cho nó trừu tượng như nó có thể nhưng tất nhiên đây là một từ Northwind DB. select sum (UnitPrice * Quantity)/(chọn count (*) từ Orders) từ OrderDetails – olek
@WernfriedDomscheit - Nếu thay đổi 'dual' bằng bất kỳ bảng thực, kết quả sẽ giống nhau –