Visualizzazione dei risultati da 1 a 9 su 9

Discussione: [MySql] Export tabella

  1. #1

    [MySql] Export tabella

    Salve a tutti,

    ho da importare dei dati da una tabella dati_contatto
    con id , id_fornitori, contatto,telefono

    alla tabella fornitori

    che nella stessa riga permette di inserire 2 contatti con nome e telefono
    contatto1,telefono1,contatto2telefono2 , questa tabella contiene gi� dati quindi andrebbe eseguito un update

    i contatti potrebbero essere pi� di 2 quindi dopo il secondo non inserisco pi� niente

    quindi la logica dovrebbe essere

    //ciclo le righe

    //se corrisponde l'id fornitore

    //controllo se contatto1 e telefono 1 sono vuoti se si inserisco nel contatto1 e telefono 1 altrimenti controllo contatto2 e telefono 2 se sono vuoti inserisco altrimenti salto al record successivo

    quindi la query potrebbe essere :

    codice:
    [COLOR=var(--highlight-keyword)]UPDATE[/COLOR] fornitori
    [COLOR=var(--highlight-keyword)]INNER[/COLOR] [COLOR=var(--highlight-keyword)]JOIN dati_contatto[/COLOR] [COLOR=var(--highlight-keyword)]ON[/COLOR] fornitori.id = dati_contatto.id_fornitori
    IF (fornitori.contatto1 is not null and fornitori.telefono1 is not null ,
          set (fornitori.contatto1,fornitori.telefono1) VAlues (dati_contatto.contatto,dati_contatto.telefono),
          IF(fornitori.contatto2 is not null and fornitori.telefono2 is not null ,
               set (fornitori.contatto2,fornitori.telefono2) VAlues (dati_contatto.contatto,dati_contatto.telefono))
    ma non gli piace il primo IF

  2. #2
    riposta la query per cortesia, non si legge

  3. #3
    Quote Originariamente inviata da optime Visualizza il messaggio
    riposta la query per cortesia, non si legge
    eccola :

    codice:
    UPDATE 
      fornitori 
      INNER JOIN dati_contatto ON fornitori.id = dati_contatto.id_fornitori IF (
        fornitori.contatto1 is not null 
        and fornitori.telefono1 is not null, 
        set 
          (
            fornitori.contatto1, fornitori.telefono1
          ) 
        VAlues 
          (
            dati_contatto.contatto, dati_contatto.telefono
          ), 
          IF(
            fornitori.contatto2 is not null 
            and fornitori.telefono2 is not null, 
            set 
              (
                fornitori.contatto2, fornitori.telefono2
              ) 
            VAlues 
              (
                dati_contatto.contatto, dati_contatto.telefono
              )
          )
        )
    Ultima modifica di pippuccio76; 05-04-2024 a 16:45

  4. #4
    quindi tu stai usando la IF per costruire la tua query, non so se si può fare...

  5. #5
    me ne sono accorto adesso perché parliamo di questioni tecniche in off-topic?

  6. #6
    Quote Originariamente inviata da optime Visualizza il messaggio
    quindi tu stai usando la IF per costruire la tua query, non so se si può fare...
    E l'alternativa quale è?

  7. #7
    Quote Originariamente inviata da optime Visualizza il messaggio
    quindi tu stai usando la IF per costruire la tua query, non so se si può fare...
    E l'alternativa quale è? posso farlo con PHP ma pensavo fosse possibile anche in sql

  8. #8
    Quote Originariamente inviata da optime Visualizza il messaggio
    me ne sono accorto adesso perché parliamo di questioni tecniche in off-topic?
    fatte sposta'

  9. #9
    fatto in php puoi chiudere

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.