Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    144

    Query SQL su anagrafica clienti

    Ciao ragazzi,
    ho la seguente situazione e vorrei trovare una soluzione al seguente problema:

    codice:
    CLIENTE      ABI      CAB                         IBAN                                TIPO OPERAZIONE
    
         1        null      null        IT 17 X 06055 02100 000001256567                      0
         1         06055   02100                        null                                  1
         2        null      null        IT 34 R 85370 30044 005320130034                      0
         2         85370   30044                        null                                  1
        ...        ...    ...                            ...                                            ...
    Per ciascun cliente, dovrei riportare il codice IBAN dalla riga con 'TIPO OPERAZIONE=0' alla riga con 'TIPO OPERAZIONE=1'; il risultato finale dovrà essere quindi:

    codice:
    CLIENTE      ABI      CAB                         IBAN                                TIPO OPERAZIONE
    
         1        null     null         IT 17 X 06055 02100 000001256567                      0
         1        06055   02100         IT 17 X 06055 02100 000001256567                      1
         2        null     null         IT 34 R 85370 30044 005320130034                      0
         2        85370   30044         IT 34 R 85370 30044 005320130034                      1
        ...        ...    ...                            ...                                            ...
    Senza utilizzare programmi algoritmici, come è possibile risolvere con una query SQL?
    Grazie!

  2. #2
    devi fare una UPDATE JOIN (in JOIN con sé stessa) della tabella Clienti. Dovresti dire (come da regolamento ) con quale db stai lavorando

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    144
    Scusami, sto usando MsSql.

    Verrebbe così?

    codice:
    UPDATE clienti AS a JOIN clienti AS b ON a.cliente = b.cliente
    SET b.iban = a.iban
    WHERE a.tipooperazione=1

  4. #4
    potrebbe essere buona, hai provato? (fatti prima un backup)

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    144
    Ecco la query funzionante:

    codice:
    UPDATE a
    SET a.iban = b.iban,
    FROM clienti AS a JOIN clienti AS b ON a.cliente = b.cliente
    WHERE (b.tipooperazione=0) AND (a.tipooperazione=1)
    Grazie!

  6. #6

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.