code

sql 쿼리를 사용하여 문자열을 int로 변환

starcafe 2023. 8. 26. 12:02
반응형

sql 쿼리를 사용하여 문자열을 int로 변환

SQL Server 2005에서 SQL 쿼리를 사용하여 문자열을 정수로 변환하는 방법은 무엇입니까?

CAST 또는 CONVERT:

SELECT CAST(MyVarcharCol AS INT) FROM Table

SELECT CONVERT(INT, MyVarcharCol) FROM Table

SQL Server 2012부터는 TRY_PARSE 또는 TRY_CONVERT를 사용할 수 있습니다.

SELECT TRY_PARSE(MyVarcharCol as int)

SELECT TRY_CONVERT(int, MyVarcharCol)

숫자 문자열에서 변환할 때도 주의하십시오.'56.72'INT에 SQL 오류가 발생할 수 있습니다.

Conversion failed when converting the varchar value '56.72' to data type int.

이 문제를 해결하려면 다음과 같이 변환을 두 번 수행합니다.

문자열 -> 숫자 -> INT

또는

SELECT CAST(CAST (MyVarcharCol AS NUMERIC(19,4)) AS INT)

표 A에서 표 B로 데이터를 복사할 때 변환은 암시적이므로 두 번째 변환이 필요하지 않습니다(가장 가까운 INT로 반올림하는 것이 만족스러운 경우).

INSERT INTO TableB (MyIntCol)
SELECT CAST(MyVarcharCol AS NUMERIC(19,4)) as [MyIntCol]
FROM TableA

이것을 사용해 보세요, 아테나에서 저에게 효과가 있었습니다.

cast(MyVarcharCol as integer)

다음 쿼리를 사용합니다.

select to_number('String') from dual;

언급URL : https://stackoverflow.com/questions/728833/convert-a-string-to-int-using-sql-query

반응형