logo

SQL dotaz pro převod VARCHAR na INT

Metody CAST() a CONVERT() SQL Serveru lze použít k převodu VARCHAR na INT. Podíváme se také na efektivnější a bezpečnější přístup k transformaci hodnot z jednoho datového typu na jiný.

OBSAZENÍ()

The OBSAZENÍ() Funkce v SQL Server se používá k přetypování nebo transformaci hodnoty nebo výrazu z jednoho datového typu na jiný.



Syntaxe:

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

Parametry:

  • výraz – Jakákoli hodnota jakéhokoli typu, která bude převedena.
  • target_type – Cílový datový typ, na který bude hodnota převedena. např. INT, BIT, SQL_VARIANT atd.
  • délka – Volitelný parametr, který určuje délku target_type, výchozí délka je 30.

Vezměme si příklad, kdy se funkce CAST() používá k převodu VARCHAR na INT.



kolik měst je v USA

Dotaz:

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

Výstup:



Konvertovat()

V SQL Server, KONVERTOVAT() Funkce se používá k převodu hodnoty jednoho typu na jiný. Převod čehokoli zahrnuje změnu jeho tvaru nebo hodnoty.

Syntaxe:

java řetězec cmp
SELECT CONVERT ( target_type ( length ), expression )>

Parametry :

entita vztahová
  • target_type – Datový typ, na který bude výraz převeden, např.: INT, BIT, SQL_VARIANT atd.
  • délka – Poskytuje délku target_type. Délka není povinná. Výchozí délka je nastavena na 30.
  • výraz – výraz je cokoliv, co bude převedeno.

V níže uvedeném příkladu se funkce CONVERT() používá k převodu VARCHAR na INT.

Dotaz:

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

Nyní pojďme diskutovat o efektivnějším přístupu k převodu hodnot z jednoho datového typu na jiný pomocí funkce SQL Server TRY_CAST() a TRY_CONVERT():

TRY_CAST()

The TRY_CAST() Funkce se pokusí přetypovat vstupní hodnotu na hodnotu daného datového typu. Pokud je přetypování úspěšné, vrátí hodnotu v poskytnutých datech; jinak vrátí NULL. Pokud však požadujete převod, který není platný, metoda TRY_CAST() vrátí chybu.

Syntaxe:

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

Použité parametry:

javabilní
  • datový typ: Platný datový typ, do kterého funkce přetypuje výraz.
  • výraz: Hodnota k odevzdání.

Dotaz:

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

Dotaz:

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

TRY_CONVERT()

The TRY_CONVERT() metoda se pokusí převést hodnotu, která je jí poskytnuta, na zadaný datový typ. Pokud je přetypování úspěšné, vrátí hodnotu jako daná data; jinak vrátí NULL. Pokud požadujete převod, který je výslovně zakázán, metoda TRY CONVERT() vrátí chybu.

Syntaxe:

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

Použité parametry:

obsazení v sql
  • datový typ: Platný datový typ, do kterého funkce přetypuje výraz.
  • výraz: Hodnota k odevzdání.
  • styl: Je zadané celé číslo, které určuje, jak funkce přeloží výraz.

Dotaz:

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

Dotaz:

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