2010-06-23 4 views
2

J'ai une colonne dans une table qui doit être remplacée par une colonne d'une autre table. Fondamentalement, l'un est la description courte des éléments et l'autre (qui a été trouvé dans un autre tableau) est la longue description des mêmes éléments dans le même ordre. Je suis assez nouveau pour écrire réellement des requêtes avec mysql, (j'ai toujours compté sur ActiveRecord ou similaire), alors s'il vous plaît ne pas newbie bash moi sur ce point.Mysql, remplace la colonne entière par une autre colonne de tables

À quoi ressemblerait cette requête?

+1

Quelles sont les colonnes dans les deux tables, et quelle colonne (s) peuvent être utilisés pour relier une table à l'autre? –

+0

C'est juste une colonne 'items :: short_description' et l'autre est dans une table différente' details :: long_description', puisque je n'ai pas besoin des descriptions courtes, et je préfère ne pas avoir une relation pour juste la description J'aimerais remplacer la colonne 'short_description' dans la table' items' 1-for-1 par la colonne 'long_description' dans la table' details'. –

+0

Sans quelque chose pour lier les records entre les tables sur un ratio de 1 à 1, le mieux que vous pouvez faire est un produit cartésien (pas bon). –

Répondre

6
UPDATE 
    FirstTable 
    JOIN SecondTable ON FirstTable.ItemID = SecondTable.ItemID 
SET 
    FirstTable.Description = SecondTable.LongerDescription 
+0

propre et simple, merci beaucoup! –

Questions connexes