Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Mengapa Oracle SQL tidak mengizinkan kita menggunakan alias kolom dalam klausa GROUP BY?

Bukan hanya Oracle SQL, sebenarnya saya percaya itu sesuai dengan standar ANSI SQL (walaupun saya tidak punya referensi untuk itu). Alasannya adalah klausa SELECT diproses secara logis setelah klausa GROUP BY, jadi pada saat GROUP BY selesai alias belum ada.

Mungkin contoh yang agak konyol ini membantu memperjelas masalah dan ambiguitas yang dihindari SQL:

SQL> select job as sal, sum(sal) as job
  2  from scott.emp
  3  group by job;

SAL              JOB
--------- ----------
ANALYST         6000
CLERK           4150
MANAGER         8275
PRESIDENT       5000
SALESMAN        5600


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle SQL - Cara Mengambil 5 nilai tertinggi dari sebuah kolom

  2. Bagaimana cara mengubah nilai yang dipisahkan koma menjadi baris di Oracle?

  3. Fungsi NLS_COLLATION_ID() di Oracle

  4. Fungsi GREATEST() di Oracle

  5. Bagaimana cara menggunakan konstanta paket dalam pernyataan SQL SELECT?