Sono nuovo di zecca per il mondo Oracle, quindi questo potrebbe essere un softball. Lavorando con un rapporto SSRS, sto passando una serie di stati a una vista. La torsione è che gli utenti possono anche scegliere una selezione dalla lista stato chiamato "[Nessuna selezione]" ... (che parte non era da fare e mi sono bloccato con le cose di attuazione in questo modo)Clausola WHERE condizionale con l'istruzione CASE in Oracle
Se scelgono l'opzione Nessuna selezione, quindi voglio solo restituire tutti gli stati per impostazione predefinita, altrimenti restituire solo l'elenco degli stati che sono nel mio elenco separato da virgole.
Questo sembra davvero dovrebbe essere facile ma sono bloccato. Ecco il codice che ho finora (solo cercando di far funzionare un campione) ma i miei occhi sono finalmente passati incrociati cercando di farlo funzionare.
Qualcuno potrebbe darmi qualche indicazione su questo per favore?
begin :stateCode:='MO,FL,TX'; --:stateCode:='[ No Selection ]'; end; / select count(*) as StateCount, :stateCode as SelectedVal from hcp_state vw where (case when (:stateCode = '') then (1) when (:stateCode != '') then (vw.state_cd in (:stateCode)) (else 0) end) ;
'(altro 0) 'non dovrebbe avere parentesi . – zygimantus
@zygimantus. . . Grazie. È davvero curioso che non ci sia una cronologia delle modifiche, perché il formato del codice era molto diverso dal mio solito stile di indentazione. Tutto risolto ora. –