Modifica massiva di un campo

di il
2 risposte

Modifica massiva di un campo

Ciao a tutti

Ho una colonna prezzi (varchar che non può essere modifica in INT) dove è tutta così
120.0
oppure
4.9

è possibile in una query modificare tutta la colonna in modo tale che tutto ciò che c'è dal punto in poi venga cancellato?
In modo tale che mi rimangano solamente gli interi?
120
oppure
4

perché non vorrei ciclare tutti i record, fare un explode(.) su tutti i valori ed estrarre la parte di sinistra...
Grazie

2 Risposte

  • Re: Modifica massiva di un campo

    Basta una query di UPDATE [CODE]UPDATE Tabella Set CampoPrezzo = LEFT(CampoPrezzo, CHARINDEX('.', CampoPrezzo)-1) Opzionalmente puoi specificare le condizioni WHERE per aggiornare solo alcuni record invece che tutti quelli della tabella.
  • Re: Modifica massiva di un campo

    Io mi farei una domanda prima: perchè la vuoi trasformare in INT? Un prezzo può benissimo avere una parte decimale e il tipo di campo adatto a contenere un tale valore dovrebbe essere un DECIMAL, non un INT... Poi, boh, le ragioni per voler fare una cosa del genere non le conosco...
Devi accedere o registrarti per scrivere nel forum
2 risposte