2009-08-05 7 views
0

Utilisation d'Access 2003Comment mettre à jour ou sélectionner la même valeur de lignes dans la table?

Tableau 1

EmpID Name city 

101 Raja Sydney 
102 Ram Melbourne 
103 Ravi Adelaide 
101 
102 
103 

ainsi de suite ...,

Je veux mettre à jour ou sélectionnez le même nom, ville pour la

de blanc EMPID de sortie prévue

EmpID Name city 

101 Raja Sydney 
102 Ram Melbourne 
103 Ravi Adelaide 
101 Raja Sydney 
102 Ram Melbourne 
103 Ravi Adelaide 

Donc sur ...,

Comment faire une requête pour cette condition?

+0

La mise à jour est assez simple, mais est-ce que cette table a une clé primaire? –

+0

La table _as posted_ n'a pas de clé et viole 1NF. – onedaywhen

Répondre

1

Il est possible d'utiliser des requêtes sous la mise à jour dans Access:

UPDATE (
    SELECT tblT.EmpID, tblT.EmpName, tblT.City 
    FROM tblT 
    WHERE tblT.EmpName Is Null) AS t 
INNER JOIN (
    SELECT tblT.EmpID, tblT.EmpName, tblT.City 
    FROM tblT 
    WHERE tblT.EmpName Is Not Null) AS x 
ON t.EmpID = x.EmpID 
SET t.EmpName = [x].[EmpName], t.City = [x].[City]; 

Soyez conscient que la fenêtre de conception de requête peut sérieusement gâcher la mise en page et peut arrêter des sous-requêtes de travail en changeant les parenthèses() à entre crochets [], cependant, il est assez sûr de coller le SQL dans SQL View, enregistrer et exécuter.

0

La table affichée n'a pas de clé et enfreint first normal form.

Par exemple, si vous tableau contenait ces données:

Table1 

EmpID Name city 

101 Raja Sydney 
102 Ram Melbourne 
103 Ravi Adelaide 
101 Ajaa New York 
102 Mar Des Moines 
103 Ivar Dallas 
101 
102 
103 

... alors quelle valeur vous attendez-vous cette requête de choisir pour 102: Melbourne ou Des Moines?

Questions connexes