Répéter valeur en SQL Access

Netateur

Nouveau membre
bonjour,
je suis débutant sous access.
Pour simplifier le probleme, disons que j'ai une table avec un champs "nom" et un champs numéro automatique.
Les champs "nom" sont parfois vides.
Je voudrais que les champs vides prennent la valeur du dernier champs non vide avant eux.
Concretement, j'ai:
ligne1: 1 - Dupont
ligne2: 2 - " "
ligne3: 3 - " "
ligne4: 4 - Durand
ligne5: 5 - " "

Je voudrais que les champs "nom" de la ligne 2 et 3 (qui sont donc vides) prennent la valeur "Dupont" et la ligne 5 "Durand"

J'essaie un peu au hasard un requête sql de ce type:

SELECT Table1.Nom
FROM Table1
IF Table1.Nom is not null
"var"=Table1.Nom
ELSE Table1.Nom="var"
;

Ca ne marche évidemment pas (erreur de syntaxe de la clause FROM), j'imagine que la syntaxe est bizarre, j'espère que ça donne toutefois une idée de ce que je voudrais.
Je ne sais pas si je peux définir une variable ainsi, si mon emploi de if - else est correct, etc.
Merci de votre aide!!!!
 

zeb

Modérateur
Non, c'est pas du SQL ça.
Essaye plutôt de voir la commande UPDATE.

Je n'ai plus l'habitude de faire avec ACCESS et je ne l'ai pas a disposition pour vérifier la syntaxe. (SQL est un langage bien normé : c'est trop facile, tous les SGBD utilise leur propre patois ).

J'ai vérifié sous INFORMIX.

Soit la ligne N, dont le nom est vide.
Quelle est le nom à prendre :

Code:
SELECT Nom
FROM   Table1
WHERE  Num = ( SELECT MAX ( Num )
               FROM   Table1
               WHERE  Nom IS NOT NULL
                 AND  Num < N )

Comment changer la valeur du nom de la ligne N de la table :

Code:
UPDATE Table1
SET    Nom = 'Nouveau nom'
WHERE  Num = N

Comment résoudre le problème posé :

Code:
UPDATE Table1
SET    Nom = ( SELECT Nom
               FROM   Table1
               WHERE  Num = ( SELECT MAX ( Num )
                              FROM   Table1
                              WHERE  Nom IS NOT NULL
                                AND  Num < X.Num ) )
from   Table1 X

Une bonne âme pour vérifier, voire adapter pour ACCESS...

enjoy!
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 052
Membres
1 586 282
Dernier membre
Yannick3553
Partager cette page
Haut