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

    Mysql numero progressivo

    Ciao a tutti,
    vorrei che nella mia tabella si generasse un numero progressivo collegato al valore presente nel campo "settore".
    Per esempio:

    tabella

    id - progressivo2 - settore

    record

    1 - 1 - immobiliare
    2 - 2 - immobiliare
    3 - 1 - turismo
    4 - 3 - immobiliare
    5 - 2 - turismo
    6 - 1 - viaggi
    7 - 4 - immobiliare

    questi 7 record, per esempio, vengono caricati in un unico insert.

    Posso fare una query unica che mi incrementa il campo "progressivo2" in base al campo "settore"?

    Fatemi sapere.

    Grazie mille!!

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ti devi prima recuperare l'ultimo valore immesso per il settore che stai inserendo.

    Roby

  3. #3
    Anche facendo un INSERT in blocco di tutti i valori?
    Non saprei come fare...

    ora l'insert è così:

    codice:
    strq = "INSERT INTO email (email,nostraemail,settore,data,attiva) SELECT DISTINCT email,nostraemail,settore,data,attiva FROM emailtemporanea WHERE email NOT IN (SELECT email FROM email WHERE ((email.attiva = 'NO') or (" & controllosettore3 & "))"
    co.execute (strq)
    Praticamente il riferimento che deve far incrementare il numero è "nostraemail" e dovrei aggiungere un campo che si chiama per esempio "idnostraemail".
    Considera che fa un insert in blocco prendendo tutto ciò che sta dentro emailtemporanea, così come si vede dall'attuale query.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Un'altra query intendevo...

    Roby

  5. #5
    non ho capito..

    come faccio a collegarla alla mia query?

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi fare un'altra query SELECT prima della tua query INSERT INTO...
    Devi prima conoscere il valore di settore da inserire...

    Roby

  7. #7
    Perfetto, fatta quella come faccio a far incrementare il "idnostraemail" nell'insert?
    In quell'insert che vedi il valore di "idnostraemail" ha una numero di partenza diverso in base ad ogni "nostraemail" quindi anche facendo una select e avendo un "idnostraemail" come faccio a farlo incrementare in base ad ogni "nostraemail" visto che nell'insert carica differenti record con diffenenti "nostraemail" contemporaneamente?

    Spero di essermi spiegato bene...

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi recuperare il valore massimo (MAX) "nostraemail" in base al settore e incrementarlo di uno e metterlo nella INSERT.

    Roby

  9. #9
    Scusa se non capisco.
    Se io faccio l'insert in blocco, come fa a incrementarsi quel valore?
    Devo fare un ciclo ed inserire i campi ad uno ad uno?

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ti ho già detto che PRIMA della insert devi fare una query per prenderti il valore, da incrementare di 1, da passare alla insert successivamente.

    Non devi fare una INSERT e basta. Per ogni insert deve prima esserci una SELECT

    Roby

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.