Archives de la liste a​i​d​e​@p​a​h​e​k​o​.c​l​o​u​d​

Calculer un champ à partir d'un autre champ calculé ?

david at attac.org via aide

08/11/2024 17:30:23

Bonjour,

Je souhaiterais savoir s'il est possible de calculer un champ à partir 
d'un autre champ calculé. J'ai essayé, mais je n'obtiens pas les valeurs 
attendues. Je vous montre un exemple :

J'ai créé un champ "insee" qui détermine le code INSEE en fonction du 
champ "ville" saisi manuellement.

CASE
	WHEN "ville" IN ("LES ADRETS") THEN '38002'
	WHEN "ville" IN ("L ALBENC", "L'ALBENC") THEN
'38004'
	WHEN "ville" IN ("ANNOISIN CHATELANS") THEN '38010'
	WHEN "ville" IN ("BEVENAIS") THEN '38042'
	WHEN "ville" IN ("BREZINS") THEN '38058'
	WHEN "ville" IN ("BRION") THEN '38060'

	ELSE 'Erreur'
END

Ce champ semble correctement calculé : les codes INSEE correspondants 
sont affichés.

À partir du champ "insee", je souhaite déterminer l'arrondissement 
correspondant, le champ "arrondissement". Pour cela, j'ai écrit ce code :

CASE
	WHEN "insee" IN ('38002', '38004') THEN
'Grenoble'
	WHEN "insee" IN ('38010', '38042') THEN 'La
Tour-du-Pin'
	WHEN "insee" IN ('38058', '38060') THEN 'Vienne'

	ELSE 'Erreur'
END

Mon problème est que le champ "arrondissement" affiche invariablement la 
valeur 'Erreur'. S'agit-il d'une erreur de ma part ? Je ne suis pas
très 
familier du langage SQL…

Bien à vous,

David

Calculer un champ à partir d'un autre champ calculé ?

bohwaz/Paheko

08/11/2024 18:04:29

Ce n'est pas possible techniquement.

Simplement car tous les champs sont calculés au même moment donc ton premier champ
n'est pas accessible pour le calcul du second.