Frage : Orakel bildet Rekordgruppenfrage

AUSERWÄHLTES lt_location_id location_id, site_name
from Aufstellungsorte b
where MOBILE_OR_SUBCENTER = 'S'< Br/>and inactive_date ist null
order durch 1

-----------------------
This ist mein query.

I möchten „ALLE“ für alle Positionsidentifikation hinzufügen und alle Positionen ziehen. Wie tdo füge ich den in der Rekordgruppe hinzu?

--------------
Select site_name,
Summe (NO_OF_DONORS- NO_OF_DEFERRED) no_of_donors,
Summe (NO_OF_RESCHED) das no_of_resched
from, das a,
ds_sub_cntr_rebooking ist, stationiert b
where a.location_id = b.lt_location_id
und coll_date zwischen: start_date und: end_date
und seq_no =: p_seq_no
und location_id =: p_location_id
group durch site_name
order durch 1;

Here, das ich addieren muss, decodieren Aussage, um für eine gegebene Position oder für ALLE zu ziehen. Wie man that
tut

Antwort : Orakel bildet Rekordgruppenfrage

Lt_location_id location_id, site_name, Niveau 2 VORWÄHLEN
von Aufstellungsorten b
wo MOBILE_OR_SUBCENTER = „S“
und inactive_date ist ungültig
Anschluss
„alles“ location_id vorwählen, -- ist location_id ein varchar2?
„Alle Positionen“, 1 Niveau
von Doppel
Auftrag durch Niveau, 1


Site_name vorwählen,
          (NO_OF_DONORS- NO_OF_DEFERRED) no_of_donors summieren,
          Summe (NO_OF_RESCHED) no_of_resched
vom Ds_sub_cntr_rebooking a,
       stationiert b
wo a.location_id = b.lt_location_id
    und coll_date zwischen: start_date und: end_date
    und seq_no =: p_seq_no
    und location_id = Fall: p_location_id
                                wenn „alle“ dann location_id
                                sonst
                                : p_location_id
                                Ende
Gruppe durch site_name
Auftrag durch 1;

oder
    und location_id = decodieren (: p_location_id, „alle“, location_id: p_location_id)

oder
    und ((: p_location_id = „alle ") oder (location_id =: p_location_id))                            
Weitere Lösungen  
 
programming4us programming4us