Pagina 2 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 35
  1. #11
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da Elena78
    perchè dopo il set = vuole una select non un'altra tabella così..
    :master:

    ma nella set gli dici di mettere il campo di quella tabella = al campo dell'altra tabella...

    adesso cerco quelche informazione su toad e vediamo che vuole

  2. #12
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Originariamente inviato da darkblOOd
    :master:

    ma nella set gli dici di mettere il campo di quella tabella = al campo dell'altra tabella...

    adesso cerco quelche informazione su toad e vediamo che vuole
    si si .. ho messo tutta la tua istruzione ..

  3. #13
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Ora ho provato così:

    update RECALL47_TEMP_3TRANCHE
    set RECALL47_TEMP_3TRANCHE.COD38 = (select OPERATORI_OUTBOUND.TEAM
    from OPERATORI_OUTBOUND, RECALL47_TEMP_3TRANCHE
    where OPERATORI_OUTBOUND.LOGIN=RECALL47_TEMP_3TRANCHE.AG ENT_ID) where cod38 is null


    La select funziona ma se la incorporo all'UPDATE mi da questo errore:

    The following error has occurred:

    ORA-01427: single-row subquery returns more than one row

  4. #14
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    infatti...dato anche a me :quipy:

    prova così:
    (senza mettere l'alias dopo la set (rc.COD38)

    codice:
    update RECALL47_TEMP_3TRANCHE 
    set COD38 = op.TEAM 
    from RECALL47_TEMP_3TRANCHE rc, OPERATORI_OUTBOUND op
    where op.LOGIN=rc.AGENT_ID
    e vedi se continua a darti errore su SET

    al limite prova mettendo l'alias anche lì.

    fammi sapere

  5. #15
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Originariamente inviato da darkblOOd
    infatti...dato anche a me :quipy:

    prova così:
    (senza mettere l'alias dopo la set (rc.COD38)

    codice:
    update RECALL47_TEMP_3TRANCHE 
    set COD38 = op.TEAM 
    from RECALL47_TEMP_3TRANCHE rc, OPERATORI_OUTBOUND op
    where op.LOGIN=rc.AGENT_ID
    e vedi se continua a darti errore su SET

    al limite prova mettendo l'alias anche lì.

    fammi sapere


    update RECALL47_TEMP_3TRANCHE
    set COD38 = (select op.TEAM
    from RECALL47_TEMP_3TRANCHE rc, OPERATORI_OUTBOUND op
    where op.LOGIN=rc.AGENT_ID) where cod38 is null


    stesso errore anche con gli alias.. ma quell'errore non comapre quando il valore che ritorna è maggiore di quello da inserire?? o sbaglio? :master:

  6. #16
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da Elena78

    update RECALL47_TEMP_3TRANCHE
    set COD38 = (select op.TEAM
    from RECALL47_TEMP_3TRANCHE rc, OPERATORI_OUTBOUND op
    where op.LOGIN=rc.AGENT_ID) where cod38 is null


    stesso errore anche con gli alias.. ma quell'errore non comapre quando il valore che ritorna è maggiore di quello da inserire?? o sbaglio? :master:
    praticamente ti dice che la select restituisce n righe (e questo lo sapevamo) e non può mettere n valori in un campo solo. Grazie al cavolo, noi vorremmo facesse n update per quanti sono i valori restituiti dalla select, dove n è uguale ai record della tabella da aggiornare (tanti record quanti sono i valori id degli agenti da updatare)

    Non capisco perchè non debba funzionare la sintassi "semplice" che ho postato prima (subito dopo la join) a me funzia con Enterprise Manager

    vediamo un pò....faccio qualche altra prova

  7. #17
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    codice:
    update RECALL47_TEMP_3TRANCHE 
    set COD38 = OPERATORI_OUTBOUND.TEAM 
    from OPERATORI_OUTBOUND
    where OPERATORI_OUTBOUND.LOGIN=RECALL47_TEMP_3TRANCHE.AGENT_ID

    ma così deve funzionare

    del resto sql mica è ad interpretazione :quipy:

  8. #18
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535
    Originariamente inviato da darkblOOd
    codice:
    update RECALL47_TEMP_3TRANCHE 
    set COD38 = OPERATORI_OUTBOUND.TEAM 
    from OPERATORI_OUTBOUND
    where OPERATORI_OUTBOUND.LOGIN=RECALL47_TEMP_3TRANCHE.AGENT_ID

    ma così deve funzionare

    del resto sql mica è ad interpretazione :quipy:

    No gio'.. non gli piace ..
    guarda il print screen
    ma anche se funzionasse tornerebbe lo stesso errore di prima, la logica è la stessa.. estrae com + righe, no??

  9. #19
    Utente di HTML.it L'avatar di Elena78
    Registrato dal
    Oct 2001
    Messaggi
    535

    k

    ops
    Immagini allegate Immagini allegate

  10. #20
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da Elena78
    No gio'.. non gli piace ..
    guarda il print screen
    ma anche se funzionasse tornerebbe lo stesso errore di prima, la logica è la stessa.. estrae com + righe, no??
    si, però quella sintassi funziona perchè gli dici di updatare TUTTE le righe che rispondono alla where, mentre impostando il campo al valore restituito da una select non accetta + valori.
    La sintassi con la select serve se devi impostare UN valore della tabella uguale ad UN valore di un altra tabella
    Ho guardato + documentazioni ed anche gli esempi indicano questo.

    La sintassi della UPDATE e quella lì

    se toad vuole possiamo invertarci altro, ma dubito che il db ce lo consenta

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.