>데이터 베이스 >MySQL 튜토리얼 >mysql 캐스트 및 변환 함수 사용

mysql 캐스트 및 변환 함수 사용

伊谢尔伦
伊谢尔伦원래의
2016-11-24 16:03:271442검색

MySQL의 CAST() 및 CONVERT() 함수를 사용하여 한 유형의 값을 얻고 다른 유형의 값을 생성할 수 있습니다. 둘의 구체적인 구문은 다음과 같습니다.

CAST(value as type);
CONVERT(value, type);

은 CAST(xxx AS 유형), CONVERT(xxx, 유형)입니다.

변환할 수 있는 종류가 제한되어 있습니다. 이 유형은 다음 값 중 하나일 수 있습니다.

바이너리(바이너리 접두사의 효과 포함): BINARY

문자 유형, 매개변수를 사용할 수 있습니다: CHAR()

날짜: DATE

시간: TIME

날짜 시간 유형: DATETIME

부동 소수점 수: DECIMAL

정수: SIGNED

부호 없는 정수: 서명되지 않음

다음은 몇 가지 예입니다.

예 1

mysql> SELECT CONVERT('23',SIGNED);
+----------------------+
| CONVERT('23',SIGNED) |
+----------------------+
|         23 |
+----------------------+
1 row in set

예 2

mysql> SELECT CAST('125e342.83' AS signed);
+------------------------------+
| CAST('125e342.83' AS signed) |
+------------------------------+
|             125 |
+------------------------------+
1 row in set

예 3

mysql> SELECT CAST('3.35' AS signed);
+------------------------+
| CAST('3.35' AS signed) |
+------------------------+
|           3 |
+------------------------+
1 row in set

위의 예와 같이 Cast(a as signed)를 사용하여 varchar를 int로 변환합니다. 여기서 a는 varchar 유형의 문자열입니다.

예제 4

SQL Server에서 다음 코드는 datetime 변수에 단순 날짜와 단순 시간만 포함된 경우 날짜 저장의 16진수 저장 결과를 보여줍니다.

DECLARE @dt datetime
  
--单纯的日期
SET @dt='1900-1-2'
SELECT CAST(@dt as binary(8))
--结果: 0x0000000100000000
  
--单纯的时间
SET @dt='00:00:01'
SELECT CAST(@dt as binary(8))
--结果: 0x000000000000012C

MySQL의 유형 변환은 SQL Server의 유형 변환과 동일하지만 CAST(xxx AS 유형), CONVERT(xxx, 유형) 등 유형 매개변수가 약간 다릅니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.