J'ai lu divers articles avant cela. mais aucun d'eux ne semblait fonctionner pour moi.Mise à jour SQL d'une colonne d'une autre colonne d'une autre table
Comme le titre le suggère, j'essaie de mettre à jour une colonne d'une colonne d'une autre table. Je ne me souviens pas d'avoir des problèmes avec cela avant ..
1. Tableau: user_settings.contact_id, je veux mettre à jour avec contacts.id where (user_settings.account_id == contacts_account_id)
2. Auparavant contacts ont été liés à des comptes d'utilisateurs via le compte_id. Cependant, maintenant nous voulons lier un contact à user_settings
via contacts.id
Voici quelques exemples de ce que j'ai essayé, mais aucun d'entre eux n'a fonctionné. Je serais intéressé par A.) Pourquoi ils ne fonctionnent pas et B.) Que devrais-je faire à la place.
Exemple A:
UPDATE user_settings
SET user_settings.contact_id = contacts.id
FROM user_settings
INNER JOIN contacts ON user_settings.account_id = contacts.account_id
Exemple B:
UPDATE (SELECT A.contact_id id1, B.id id2
FROM user_settings A, contacts B
WHERE user_settings.account_id = contacts.account_id)
SET id1 = id2
Exemple C:
UPDATE user_settings
SET user_settings.contact_id = (SELECT id
FROM contacts
WHERE (user_settings.account_id = contacts.account_id)
WHERE EXISTS (user_settings.account_id = contacts.account_id)
Je me sens comme mon cerveau juste arrêt sur moi et apprécierais toutes les bosses de redémarrage il. Merci :)
quelqu'un peut-il dire à mon pourquoi cela a voté contre je peux l'éviter à l'avenir? –