Duplicazione tabella

di il
9 risposte

Duplicazione tabella

Buongiorno,
ho creato il database della mia azienda nel quale ho creato una tabella SERVIZI relativa all'anno 2019, per il 2020 è possibile duplicare quella tabella cambiando l'anno da 2019 a 2020 e togliendo quei servizi che hanno come descrizione "Attivazione" in quanto si tratta di un servizio che si esaurisce nell'anno? se è possibile, si può fare usando una query?

altra domanda: dato che ogni anno serve duplicare i dati dei servizi la soluzione migliore è quella di creare una tabella anno per anno o continuare l'inserimento nella tabella di origine modificando solo il campo annoCompetenza?


Spero di essere stata chiara,
grazie!

9 Risposte

  • Re: Duplicazione tabella

    Un esempio
    INSERT INTO TABELLA1 ( CAMPO1, CAMPO2, CAMPO3, CAMPO4 )
    SELECT TABELLA1.CAMPO1, TABELLA1.CAMPO2,TABELLA1.CAMPO3,2020 AS Espr1
    FROM TABELLA1
    WHERE CAMPO1<>"Attivazione"
  • Re: Duplicazione tabella

    sdc98 ha scritto:


    altra domanda: dato che ogni anno serve duplicare i dati dei servizi la soluzione migliore è quella di creare una tabella anno per anno o continuare l'inserimento nella tabella di origine modificando solo il campo annoCompetenza?
    La seconda.
  • Re: Duplicazione tabella

    Biagio De Franco ha scritto:


    Un esempio
    INSERT INTO TABELLA1 ( CAMPO1, CAMPO2, CAMPO3, CAMPO4 )
    SELECT TABELLA1.CAMPO1, TABELLA1.CAMPO2,TABELLA1.CAMPO3,2020 AS Espr1
    FROM TABELLA1
    WHERE CAMPO1<>"Attivazione"

    Intanto grazie per avermi risposto,

    Facendo così vado a duplicare i record nella tabella esistente?! cioè prendo tutti i campi dalla mia tabella che soddisfano la condizione e li duplico nella tabella stessa?!
    quel 2020 AS Espr1 cosa fa?
  • Re: Duplicazione tabella

    sdc98 ha scritto:


    Biagio De Franco ha scritto:


    Un esempio
    INSERT INTO TABELLA1 ( CAMPO1, CAMPO2, CAMPO3, CAMPO4 )
    SELECT TABELLA1.CAMPO1, TABELLA1.CAMPO2,TABELLA1.CAMPO3,2020 AS Espr1
    FROM TABELLA1
    WHERE CAMPO1<>"Attivazione"
    Intanto grazie per avermi risposto,
    Facendo così vado a duplicare i record nella tabella esistente?! cioè prendo tutti i campi dalla mia tabella che soddisfano la condizione e li duplico nella tabella stessa?! SI
    quel 2020 AS Espr1 cosa fa?Non hai chiesto di cambiare solo l'anno? mette nel CAMPO4 (che io ho ipotizzato sia l'anno) il valore 2020
  • Re: Duplicazione tabella

    La logica di DUPLICARE tabelle è quanto meno oggetto di grande riflessione, può avere un senso, ma nella gestione standard direi che non è da fare.
    La funzionalità si ottiene inserendo un Campo DATA che fa da discriminante.
  • Re: Duplicazione tabella

    Biagio De Franco ha scritto:


    sdc98 ha scritto:


    Biagio De Franco ha scritto:


    Un esempio
    INSERT INTO TABELLA1 ( CAMPO1, CAMPO2, CAMPO3, CAMPO4 )
    SELECT TABELLA1.CAMPO1, TABELLA1.CAMPO2,TABELLA1.CAMPO3,2020 AS Espr1
    FROM TABELLA1
    WHERE CAMPO1<>"Attivazione"
    Intanto grazie per avermi risposto,
    Facendo così vado a duplicare i record nella tabella esistente?! cioè prendo tutti i campi dalla mia tabella che soddisfano la condizione e li duplico nella tabella stessa?! SI
    quel 2020 AS Espr1 cosa fa?Non hai chiesto di cambiare solo l'anno? mette nel CAMPO4 (che io ho ipotizzato sia l'anno) il valore 2020
    Biagio, prova a fare attenzione all'uso del QUOTE...!
    Grazie
  • Re: Duplicazione tabella

    Brutta idea. Pessima, idea. Idea da scartare a priori.

    A meno che la tabella non abbia centinaia di milioni o miliardi di record, non ti conviene duplicare la tabella o rimuovere dei record, tanto non danno fastidio. E non si sa mai che non ti servano per qualcosa altro.

    La dulicazione delle tabelle si fa in casi MOOOOLTO specifici e per motivi MOOOOLTO seri e lo si fa in database di grossissime dimensioni.

    Invece, la tua tabella dovrebbe avere un campo data (e magari un campo anno) che utilizzerai per selezionare SOLO i record di interesse, nell'intervallo di tempo di interesse (SOLO nell'anno 2018, SOLO tra il 19 febbraio ed il 27 giugno 2019)
  • Re: Duplicazione tabella

    Biagio De Franco ha scritto:


    sdc98 ha scritto:


    quel 2020 AS Espr1 cosa fa?Non hai chiesto di cambiare solo l'anno? mette nel CAMPO4 (che io ho ipotizzato sia l'anno) il valore 2020
    AHHH ok grazie, si infatti devo modificare dal 2019 al 2020 il campo anno dei record duplicati.
  • Re: Duplicazione tabella

    Ok capito quindi la duplicazione solo in extremis

    Adesso faccio una prova per mettere in atto i suggerimenti che mi avete dato

    Grazie mille a tutti!!!!

    Buona giornata
Devi accedere o registrarti per scrivere nel forum
9 risposte