Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. problema query mysql
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • A
      archimede2007 User Attivo • ultima modifica di

      problema query mysql

      Sarà anche un problema banale, ma è da mezz'ora che ci sto sbattendo la testa senza venirne fuori... :arrabbiato: quindi chiedo.

      Ho il seguente problema in mysql:

      • ho due tabelle: A (diciamo, un migliaio di record) e B (un centinaio di record)
      • campi tabella A: Id, campo1, campo2, campo3 ...
      • campi tabella B: Id, campo5, campo6 ...

      Devo trovare una query che, per ogni id di tabella A che esista anche in tabella B, sostituisca campo1 con il corrispondente valore in campo5 ... e che faccia la ricerca e l'eventuale operazione per tutti i 1000 record di tabella A

      Qualcuno sa darmi una dritta?

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • S
        skylinx User Attivo • ultima modifica di

        Quale e' il campo comune tra le due tabelle?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • A
          archimede2007 User Attivo • ultima modifica di

          @SkyLinx said:

          Quale e' il campo comune tra le due tabelle?

          Il campo comune è Id

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • F
            fedemasiero User • ultima modifica di

            Ciao Archimede2007,
            crei un file .php con questo codice, modifica i campi dei nomi:

            
            <?php
            //mi connetto al database
            $db = mysqli_connect("localhost","username","password","nome_DB");
            
            
            //seleziono tutti i campi delle tabelle A e B
            $queryA = "SELECT * FROM TabellaA";
            $queryB = "SELECT * FROM TabellaB";
            $resultA = mysqli_query($db, $queryA);
            $resultB = mysqli_query($db, $queryB);
            
            
            //faccio un ciclo della tabellaA con interno uno della tabella B
            while($rowA = mysqli_fetch_array($resultA)){
                $idA = $rowA["id"];
                while($rowB = mysqli_fetch_array($resultB)){
                    $idB = $rowB["id"];
                    
                    //se gli ID sono uguali lancio una query che sostituisce il campo1 con il campo 5
                    if($idB == $idA){
                        $queryTMP = "UPDATE TabellaA SET campo1 = ".$rowB["campo5"]." WHERE id = ".$idA;
                        mysqli_query($db, $queryTMP);
                        break;
                    }
                }
            }
            ?>
            
            
            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • altrasoluzione
              altrasoluzione User Attivo • ultima modifica di

              Buongiorno e scusate se m'intrometto ma... ammesso ch'io abbia capito bene il problema, non sarebbe più semplice una cosa del genere?

              
                UPDATE a table1 
                 JOIN b table2 ON table1.id = table2.id
                 SET table1.campo1 = table2.campo5
              
              
              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • A
                archimede2007 User Attivo • ultima modifica di

                @altrasoluzione said:

                buongiorno e scusate se m'intrometto ma... Ammesso ch'io abbia capito bene il problema, non sarebbe più semplice una cosa del genere?

                perfetto!!!!! :yuppi::yuppi::yuppi::yuppi::yuppi::yuppi:
                Era proprio quello che stavo cercando, grazie!

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • altrasoluzione
                  altrasoluzione User Attivo • ultima modifica di

                  Prego! Lieto di essere stato utile! 🙂

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  Caricamento altri post
                  Rispondi
                  • Topic risposta
                  Effettua l'accesso per rispondere
                  • Da Vecchi a Nuovi
                  • Da Nuovi a Vecchi
                  • Più Voti