recherche

Maison  >  Questions et réponses  >  le corps du texte

colonne de mise à jour mysql avec la valeur d'une autre table

J'ai deux tables, toutes deux se ressemblent

id  name  value
===================
1   Joe     22
2   Derk    30

Je dois value 的值从 tableA 复制到 tableB en fonction du nom du chèque dans chaque tableau.

Des conseils pour cette UPDATE déclaration ?

P粉232793765P粉232793765507 Il y a quelques jours605

répondre à tous(2)je répondrai

  • P粉186904731

    P粉1869047312023-10-12 17:50:26

    Vous devez rejoindre deux tables :

    Par exemple, vous souhaitez name 的值从 tableA 复制到 tableB,它们具有相同的 ID

    UPDATE tableB t1 
            INNER JOIN tableA t2 
                 ON t1.id = t2.id
    SET t1.name = t2.name 
    WHERE t2.name = 'Joe'

    Mise à jour 1

    UPDATE tableB t1 
            INNER JOIN tableA t2 
                 ON t1.id = t2.id
    SET t1.name = t2.name

    Mise à jour 2

    UPDATE tableB t1 
            INNER JOIN tableA t2 
                 ON t1.name = t2.name
    SET t1.value = t2.value

    répondre
    0
  • P粉511985082

    P粉5119850822023-10-12 00:34:31

    En plus de cette réponse, si vous devez modifier dynamiquement tableB.value en fonction de tableA.value, vous pouvez procéder comme suit :

    UPDATE tableB
    INNER JOIN tableA ON tableB.name = tableA.name
    SET tableB.value = IF(tableA.value > 0, tableA.value, tableB.value)
    WHERE tableA.name = 'Joe'

    répondre
    0
  • Annulerrépondre