-
UPDATE sur présélection
Bonjour
Je cherche à ajouter la colonne 'cod' de bdd2.fr dans la colonne 'cod' de bdd1.fr (colonne nouvellement crée) :
Code:
UPDATE bdd1.fr,bdd2.fr SET bdd1.fr.cod LIKE bdd2.fr.cod WHERE bdd2.fr.nom = bdd1.fr.nom
Cette requête ne marche pas correctement (elle n'affecte qu'1 seul ligne) probablement (je suppose) à cause de la présence de doublons 'nom' dans bdd1.
Plus précisément :
- bdd1.fr contient environ 36000 villes avec des 'nom' doublons
- bdd2.fr contient environ 1100 villes sans doublons de 'nom'
Pour bien faire, il faudrait sélectionner l'entrée à affecter (doublon éventuel) en fonction d'une 3è colonne bdd1.fr.rank qui contient le nombre d'habitants (car les 1100 villes de bdd2 sont en fait les plus grandes).
> Comment faire pour réaliser cette présélection ?
Autre chose : les colonnes 'nom' sont au format latin_sweedish_ci, mais celle de bdd1 code les accents (par exemple Ambérieux) alors que celle de bdd2 contient les accents (Ambérieux), mais j'ai cru comprendre que le LIKE faisait la conversion ?
Merci d'avance pour vos réponses
-
Finalement la requête fonctionne, le problème venait en fait de la table.
Par contre je reste intéressé par la sélection des données de destination (et non pas source comme c'est le cas habituellement)...