logo

Poizvedba SQL za pretvorbo VARCHAR v INT

Metodi CAST() in CONVERT() strežnika SQL lahko uporabite za pretvorbo VARCHAR v INT. Ogledali si bomo tudi učinkovitejši in varnejši pristop za pretvorbo vrednosti iz enega podatkovnega tipa v drugega.

CAST()

The CAST() funkcija v strežniku SQL Server se uporablja za pretvorbo ali pretvorbo vrednosti ali izraza iz enega podatkovnega tipa v drugega.



Sintaksa:

CAST ( expression AS target_type [ ( length ) ] )>

Parametri:

  • izražanje – Vsaka vrednost katere koli vrste, ki bo pretvorjena.
  • target_type – Ciljni podatkovni tip, v katerega bo pretvorjena vrednost. npr. INT, BIT, SQL_VARIANT itd.
  • dolžina – Izbirni parameter, ki določa dolžino target_type, privzeta dolžina je 30.

Vzemimo primer, kjer se funkcija CAST() uporablja za pretvorbo VARCHAR v INT.



poizvedba:

SELECT CAST('1234' AS INT) AS Result;>

Izhod:



Pretvorba()

V SQL Serverju je PRETVORBA() funkcija se uporablja za pretvorbo vrednosti ene vrste v drugo. Pretvarjanje česar koli vključuje spreminjanje njegove oblike ali vrednosti.

Sintaksa:

SELECT CONVERT ( target_type ( length ), expression )>

Parametri :

drugače java
  • target_type – Tip podatkov, v katerega bo pretvorjen izraz, npr.: INT, BIT, SQL_VARIANT itd.
  • dolžina – Zagotavlja dolžino target_type. Dolžina ni obvezna. Privzeta dolžina je nastavljena na 30.
  • izražanje – izraz je vse, kar bo pretvorjeno.

V spodnjem primeru se funkcija CONVERT() uporablja za pretvorbo VARCHAR v INT.

poizvedba:

SELECT CONVERT(INT,'5678') AS Result;>

Zdaj pa razpravljamo o učinkovitejšem pristopu za pretvorbo vrednosti iz enega podatkovnega tipa v drugega z uporabo funkcij SQL Server TRY_CAST() in TRY_CONVERT():

TRY_CAST()

The TRY_CAST() funkcija poskuša pretvoriti vhodno vrednost v vrednost danega podatkovnega tipa. Če je pretvorba uspešna, vrne vrednost v podanih podatkih; sicer vrne NULL. Če pa zahtevate pretvorbo, ki ni veljavna, bo metoda TRY_CAST() vrnila napako.

Sintaksa:

TRY_CAST ( expression AS data_type [ ( length ) ] )>

Uporabljeni parametri:

  • data_type: Veljaven podatkovni tip, v katerega bo funkcija pretvorila izraz.
  • izraz: Vrednost, ki jo je treba oddati.

poizvedba:

SELECT TRY_CAST('1234' as INT) as Result;>

poizvedba:

SELECT TRY_CAST('1234abc' as INT) as Result;>

TRY_CONVERT()

The TRY_CONVERT() metoda poskuša pretvoriti vrednost, ki ji je bila posredovana, v podani tip podatkov. Če je pretvorba uspešna, vrne vrednost kot podane podatke; sicer vrne NULL. Če zahtevate pretvorbo, ki je izrecno prepovedana, bo metoda TRY CONVERT() vrnila napako.

Sintaksa:

TRY_CONVERT ( data_type[(length)], expression [,style])>

Uporabljeni parametri:

  • data_type: Veljaven podatkovni tip, v katerega bo funkcija pretvorila izraz.
  • izraz: Vrednost, ki jo je treba oddati.
  • slog: Je podano celo število, ki določa, kako bo funkcija prevedla izraz.

poizvedba:

SELECT TRY_CONVERT( INT ,'5678') as Result;>

poizvedba:

SELECT TRY_CONVERT( INT ,'56abc') as Result;>