Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    MYSQL unire parte di due campi in un terzo campo

    ho in un DB mysql una tabella con vari campi gia compilati, i record sono circa 800.
    Uno di questi campi l'ho appena aggiunto e vorrei contenesse parte di altri due campi.
    Primo campo NUMERO (int3)
    Secondo campo ANNO (date10) formato aaaa-mm-gg
    terzo campo numeo_anno char 8 è quello che vorrei contenesse il numero presente nel capo numero e solo l'anno contenuto nel campo anno separati da (/).

  2. #2

  3. #3
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Perchè creare un nuovo campo? Quando effettui la query puoi calcolare il nuovo campo nell'istruzione sql tipo

    select *,lpad(numero,'0',6) as numformattato from tabella where....

    devi solo effettuare il calcolo in select. Guarda un po' i manuali mysql. Troverai sicuramente le funzioni che ti occorrono per il cacolo che chiedi e avrai in tempo reale il campo che cerchi sempre aggiornato qualora i dati varino.

    Al limite crei una view che implementa la tabella con il campo calcolato.

  4. #4
    Primo campo NUMERO (int3)
    Secondo campo ANNO (date10) formato aaaa-mm-gg
    terzo campo numeo_anno char 8 è quello che vorrei contenesse il numero presente nel capo numero e solo l'anno contenuto nel campo anno separati da (/).

    Giusto!
    ma io ho un DB con oltre 800 record esistente.
    Adesso ho la necessità di creare un nuovo campo che contiene il campo 1 concatenato con il campo due.

    Faccio un esempio per spiegarmi meglio

    ID 1 | NUMERO 1 | ANNO 2009-09-05 | NUMERO_ANNO 1/2009
    ID 2 | NUMERO 1 | ANNO 2009-09-05 | NUMERO_ANNO 1/2009
    ID 3 | NUMERO 1 | ANNO 2010-05-04 | NUMERO_ANNO 1/2010
    ID 4 | NUMERO 2 | ANNO 2010-10-24 | NUMERO_ANNO 2/2010

    L'ULTIO CAMPO (NUMERO_ANNO) è l'unione del contenuto del campo (NUMERO) con il solo anno del campo (ANNO).

    Spero di non essermi incasinato

  5. #5
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573

    Re: MYSQL unire parte di due campi in un terzo campo

    Originariamente inviato da franco12345678
    ho in un DB mysql una tabella con vari campi gia compilati, i record sono circa 800.
    Uno di questi campi l'ho appena aggiunto e vorrei contenesse parte di altri due campi.
    Primo campo NUMERO (int3)
    Secondo campo ANNO (date10) formato aaaa-mm-gg
    terzo campo numeo_anno char 8 è quello che vorrei contenesse il numero presente nel capo numero e solo l'anno contenuto nel campo anno separati da (/).
    Di norma non si salvano i campi calcolati nel database:
    codice:
    SELECT concat(`NUMERO`,'/',YEAR(ANNO)) as numeroanno FROM tabella
    se proprio vuoi salvare il valore in un campo, per uniformare i valori già presenti, fai così
    codice:
    UPDATE tabella SET numero_anno = concat(`NUMERO`,'/',YEAR(ANNO))

  6. #6
    provato e funziona.
    Mi serve per modificae il DB.
    Grazie

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.