Pas en mesure de concaténer des Valeurs Basées sur les Différentes colonnes dans le cas où l'instruction de Flocon de neige

0

La question

Espérons que faites-vous bien!..Je suis en train de concaténer des valeurs de cas lors de la déclaration fondée sur les différentes colonnes en flocon de neige ..s'il vous Plaît trouver le bloc de code ci-dessous

select *,

case when checkouttime is null then ',Patient is not checked out' else '' END
+ case when primarypatientinsuranceid is null then ',No insurance information' else '' END
+ case when closedby is null then ',Encounter not signed off' else '' END
+ case when billingtabcheckeddate is null then ',Billing tab is not checked' else '' 
+ case when alreadyrouted is null then ',Missing slip already routed' else 'Valid Missing slip'

END as resultant

from final

J'obtiens l'erreur disant "Imprévus"

Je suis en train de construire la résultante de la colonne de sortie comme suit

Patient is not checked out/Billing tab is not checked
Missing slip already routed
Encounter not signed off/No insurance information /Billing tab is not checked
Valid Missing slip

Merci, Arun

case snowflake-cloud-data-platform
2021-11-16 08:52:58
2

La meilleure réponse

1

Une alternative plus propre qui ajoute des virgules tant que de besoin, à l'aide de array_to_string(array_construct_compact()):

with data as (
    select null checkouttime
        , 2 primarypatientinsuranceid
        , null closedby
        , 4 billingtabcheckeddate
        , 5 alreadyrouted
)

select array_to_string(array_construct_compact(
    iff(checkouttime is null, 'Patient is not checked out', null) 
    , iff(primarypatientinsuranceid is null, 'No insurance information', null)
    , iff(closedby is null, 'Encounter not signed off', null)
    , iff(billingtabcheckeddate is null, 'Billing tab is not checked', null)
    , iff(alreadyrouted is null, 'Missing slip already routed', 'Valid Missing slip')
    ), ',  ')
as resultant
from data
2021-11-16 21:53:34

Merci @Felipe...ça aide!
user3369545

Veuillez accepter la réponse si c'est la réponse que tu voulais :)
Felipe Hoffa

Merci @Felipe!...Oui, j'ai accepté la réponse...
user3369545
1

En Flocon de neige, vous utilisez "||" à la concaténation de chaînes de caractères, pas de "+":

select 
case when true then ',Patient is not checked out' else '' END
|| case when false then ',No insurance information' else '' END
|| case when true then ',Encounter not signed off' else '' END
|| case when true then ',Billing tab is not checked' else '' END
|| case when false then ',Missing slip already routed' else 'Valid Missing slip' END 
as resultant;

https://docs.snowflake.com/en/sql-reference/functions/concat.html

2021-11-16 11:33:34

Merci @ Eric Lin..C'est vraiment utile....Pouvez-vous s'il vous plaît laissez-moi savoir comment faire pour supprimer le premier caractère à venir que la virgule
user3369545

Désolé, pouvez-vous préciser? Je ne pas bien comprendre votre question ci-dessus.
Eric Lin

Salut Eric....Dans la sortie pour le tord-je obtenir une virgule au début ...je posais des questions quant à la façon de se débarrasser de la virgule...
user3369545

C'est parce qu'il y avait un "," dans", le Patient n'est pas cochée, " je suppose?
Eric Lin

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................