J'ai une requête de sélection dans MySQL indiqué ci-dessous: Cette requête exécute et produit des résultats sous la forme d'une tableSélectionnez Utiliser ou PL SQL pour Transposer
Current | Past1 | Past2 | Past 3 | Past4
200 600 800 000 88
Je voudrais transposer ces résultats pour obtenir des informations sous la forme: Je voudrais donc les reults à (transposés)
Current 200
Past1 600
Past2 800
Past3 000
Past4 88
peut-il être fait en utilisant une instruction SQL dans l'oracle ou ai-je besoin d'une procédure PL SQL pour cela. Si un SQL PL peut vous fournir quelques exemples de référence.
select
sum(case
when CPT_ORIGINATED > SUBDATE(DATE(NOW()),30) THEN 1 else 0
end) as Current,
sum(case
when CPT_ORIGINATED > SUBDATE(DATE(NOW()),60) AND CPT_ORIGINATED < SUBDATE(DATE(NOW()),30) THEN 1 else 0
end) as Past1,
sum(case
when CPT_ORIGINATED > SUBDATE(DATE(NOW()),90) AND CPT_ORIGINATED < SUBDATE(DATE(NOW()),60) THEN 1 else 0
end) as Past2,
sum(case
when CPT_ORIGINATED > SUBDATE(DATE(NOW()),120) AND CPT_ORIGINATED < SUBDATE(DATE(NOW()),90) THEN 1 else 0
end) as Past3,
sum(case
when CPT_ORIGINATED > SUBDATE(DATE(NOW()),150) AND CPT_ORIGINATED < SUBDATE(DATE(NOW()),120) THEN 1 else 0
end) as Past4
from `cpt-prod`
where CPT_STATE <> 'Closed'
Oracle ou MySQL - c'est quoi? En outre, jetez un oeil à la markdown pour formater votre instruction SQL afin qu'elle soit lisible. –