Raja Krishna wrote:
>
> mo minta tolong nih, gimana ya untuk membuat average dari sum coloumn.
>
> misal seperti ini, aku punya 4 record dari 1 table A
>
> No Data Hasil
> 1 2500
> 2 3200
> 3 400
> 4 5
> dari sini aku mo select sehingga Field "Hasil" akan menghasilkan data 
> seperti ini
>
> No Data Hasil
> 1 2500 0.40950041
> 2 3200 0.52416052
> 3 400 0.06552007
> 4 5 0.000819
> dimana hasil dari record no:
>
> 1. rumusannya 2500 \ sum(data)
> 2. rumusannya 3200 \ sum(data)
> 3. rumusannya 400 \ sum(data)
> 4. rumusannya 5 \ sum(data)
>
> Atas bantuan temen2 saya ucapkan banyak terima kasih.
> thanks
>

Case2 seperti ini paling cepat dan mudah diselesaikan dengan analytic 
function, karena nilai aggregat bisa diperoleh tanpa grouping sehingga 
bisa di-returned di setiap baris record

SQL> SELECT * FROM a;
        NO       DATA
---------- ----------
         1       2500
         2       3200
         3        400
         4          5

SQL> SELECT no, data, data / SUM(data) OVER () hasil
  2  FROM a;

        NO       DATA      HASIL
---------- ---------- ----------
         1       2500  .40950041
         2       3200 .524160524
         3        400 .065520066
         4          5 .000819001

>
> Regards,
>
> Krishna
>

CMIIW,
AH

Kirim email ke