Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [mysql] - Update Set + Select

    Ringrazio sempre tutti per la pazienza e la collaborazione.

    Ho necessità di popolare una tabella con i dati di un'altra. Grazie hai Vostri contributi ho utilizzato la seguente query:

    UPDATE
    TABELLA1
    SET TABELLA1.INDIRIZZO =
    (select INDIRIZZO from TABELLA2 where TABELLA1.NOMINATIVO = TABELLA2.NOMINATIVO)
    Il problema è che per lo stesso nominativo possono esserci anche + indirizzi.
    Quindi ho il seguente messaggio di errore

    Messaggio di MySQL:
    #1242 - Subquery returns more than 1 row
    Come faccio adesso?
    grazie ancora anticipatamente

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Ma vuoi inserirli tutti, oppure ti basta prendere il primo?

    Se ti basta prendere il primo basta che nella subquery aggiungi a fondo "LIMIT 1", in modo che ritorni un solo risultato.

    Se invece nella tabella 1 hai N nominativi che possono essere uguali e ognuno ha una corrispondenza diversa di indirizzo sulla tabella 2 allora devi trovare un campo univoco che leghi le 2 tabelle.

    ciao

  3. #3
    Avrei bisogno che al campo NOMINATIVO (unica chiave che unisce le due tabelle) venga associato il campo INDIRIZZO che può contenere anche diversi indirizzi; chiaramente su record separati.

    Spero di essere stato chiaro..

    Grazie

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    quindi nella tabella 2 hai il campo nominativo che viene ripetuto più volte, giusto?

    E nella tabella 1?

    edit:

    in ogni caso se sai che è possibile avere più indirizzi per lo stesso nominativo sarebbe più corretto avere una tabella indirizzi legata al nominativo tramite un id, piuttosto che inserire N volte lo stesso nominativo con indirizzi diversi.

  5. #5
    Nella tabella 1 ho un solo record (il nominativo non viene ripetuto)

    Nella tabella 2 per lo stesso nominativo ho più record con indirizzi diversi

  6. #6
    Il problema xò non mi si risolve e mi si complica.

    Posso associare almeno uno degli indirizzi ed avere traccia dei nominativi duplicati?

  7. #7
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    scusa ma con quale degli X indirizzi sulla tab2 vuoi updatare la tab1?
    ...altri 5 anni di purga...

  8. #8
    Sceglierei il primo che contiene l'indirizzo della sede legale.

    L'altro sarebbe quello della sede operativa..

  9. #9
    Ho provveduto ad inserire l'istruzione IGNORE. Con questa ho risolto il primo problema.

    ora vorrei poter trovare la soluzione sulla tabella 2 dove esistono tutti gli indirizzi diversi sullo stesso nominativo.

    In maniera da poter creare la tabella degli indirizzi alternativi.

    Dovrei poter trovare i nominativi duplicati.


  10. #10
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    per farci cosa?
    ...altri 5 anni di purga...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.