1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.4.0
Connected as mni
SQL>
SQL> With Data As (
2 Select 'A' As article, 'f1-12/12/2012' As num_facture, 100.5 As Prix from dual union all
3 Select 'A' As article, 'f2-25/12/2012' As num_facture, 110.5 As Prix from dual union all
4 Select 'B' As article, 'f3-15/12/2012' As num_facture, 100 As Prix from dual union all
5 Select 'B' As article, 'f4-28/12/2012' As num_facture, 110 As Prix from dual
6 )
7 Select Case
8 When Grouping(num_facture) = 0 Then Article
9 When Grouping(article) = 1 Then 'Total General'
10 Else 'Total '||Article
11 End As Article,
12 num_facture,
13 sum(prix) Prix
14 From data
15 Group By Rollup(article, num_facture)
16 /
ARTICLE NUM_FACTURE PRIX
------------- ------------- ----------
A f1-12/12/2012 100,5
A f2-25/12/2012 110,5
Total A 211
B f3-15/12/2012 100
B f4-28/12/2012 110
Total B 210
Total General 421
7 rows selected
SQL> |
Partager