none
Select su campi varchar con doppi punti RRS feed

  • Domanda

  • Buongiorno

    In una tabella ho memorizzato in formato varchar(8) i dati di latitudine e longitudine.

    Il problema che ho ora è che se effettuo una banale select mi vengono restituiti i valori dei campi originali, ma se aggiungo una join, sql mi applica una "conversione" al mio campo.

    Esempio:
    Latitudine: 45.39.50

    Leggendo il campo in Join mi diventa 0,7909541281829640.

    Come faccio a dire ad SQL di non tentare una conversione del mio campo e di lasciarlo nel formato varchar originale?

    Grazie

    Marco

    lunedì 26 giugno 2017 11:06

Risposte

  • Buongiorno Marco,

    non mi è ben chiaro se utilizzi il campo Latitudine nella join (es. INNER JOIN TableB ON TableA.Latitudine = TableB.Latitudine) oppure se lo esponi solo nell'elenco dei campi del SELECT. In ogni caso direi che si tratta di una conversione implicita effettuata da SQL Server. 

    Puoi utilizzare la funzione CAST() per "forzare" il contenuto del campo a varchar, es. CAST(Latitudine as varchar(8)). 

    Vedi anche: CAST and CONVERT (Transact-SQL). Alla sezione Implicit Conversions trovi una tabella riassuntiva di tutte le tipologie di conversione effettuate. 


    HTH,

    Cris

    Please Mark This As Answer if it solved your issue or Vote This As Helpful if it helps to solve your issue. Thank you!

    lunedì 26 giugno 2017 11:38

Tutte le risposte

  • Buongiorno Marco,

    non mi è ben chiaro se utilizzi il campo Latitudine nella join (es. INNER JOIN TableB ON TableA.Latitudine = TableB.Latitudine) oppure se lo esponi solo nell'elenco dei campi del SELECT. In ogni caso direi che si tratta di una conversione implicita effettuata da SQL Server. 

    Puoi utilizzare la funzione CAST() per "forzare" il contenuto del campo a varchar, es. CAST(Latitudine as varchar(8)). 

    Vedi anche: CAST and CONVERT (Transact-SQL). Alla sezione Implicit Conversions trovi una tabella riassuntiva di tutte le tipologie di conversione effettuate. 


    HTH,

    Cris

    Please Mark This As Answer if it solved your issue or Vote This As Helpful if it helps to solve your issue. Thank you!

    lunedì 26 giugno 2017 11:38
  • Grazie Cristiano, risolto!
    lunedì 26 giugno 2017 12:14