일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 우분투
- 자동 생성
- xe
- dovecot
- html5
- curl
- 자바스크립트
- 폼메일
- not working
- 안드로이드 푸시
- soundpool
- Mail Server
- PHP
- FCM
- 안드로이드
- roundcube
- android 효과음
- UML
- WebView
- C#
- javascript
- php 시큐어코딩
- chart.js
- 설치
- 안드로이드 gcm
- php 취약점
- mysql
- Android
- C# IO
- 안드로이드 푸쉬
- Today
- Total
그러냐
MSSQL Cast, Convert 함수 사용 테스트 본문
MS-SQL로 작업을 하면서, 다양한 값 변환시, Cast, Convert 함수를 이용한다.
몇가지 변환 방법을 테스트 해 본다.
참조 : http://msdn.microsoft.com/ko-kr/library/ms187928.aspx
//////////// CAST 함수 /////////////
1. 날짜 문자열 -> smalldatetime 형으로
select cast('2009-12-21 10:30:31' as smalldatetime)
-----------------------
2009-12-21 10:31:00
2. datetime->timestamp 형으로; Default Unix time(1970년 1월 1일 부터의 Timestamp)
select cast('00:00:00' as timestamp)
------------------
0x30303A30303A3030
3. 문자열 + 정수
select 'Hello ' + cast(1234567 as nvarchar(10))
----------------
Hello 1234567
4. 문자열 + 정수(할당 공간 부족 nvarchar - 오류)
select 'Hello ' + cast(1234567 as nvarchar(5))
-----------
메시지 8115, 수준 16, 상태 2, 줄 8
expression을(를) 데이터 형식 nvarchar(으)로 변환하는 중 산술 오버플로 오류가 발생했습니다.
5. 문자열 + 정수(할당 공간 부족 - varchar)
select 'Hello ' + cast(1234567 as varchar(5))
-----------
Hello *
6. 문자열 + 문자열(공간 잘림 nvarchar)
select 'Hello ' + cast('1234567' as nvarchar(5))
-----------
Hello 12345
7. 문자열 + 문자열(공간 잘림 - varchar)
select 'Hello ' + cast('1234567' as varchar(4))
----------
Hello 1234
8. 날짜 -> 문자열
select Cast(GetDate() as nvarchar(30))
------------------------------
09 1 2009 11:30AM
9. 날짜 -> 문자열(잘림)
select Cast(GetDate() as nvarchar(5))
-----
09 1
//////////// CONVERT 함수 //////////////
1. 날짜 -> 문자열 (Style 126)
SELECT CONVERT(nvarchar(30), GetDate(), 126)
------------------------------
2009-09-01T11:30:58.060
2. 날짜 -> 문자열 (Style 108)
SELECT CONVERT(nvarchar(30), GetDate(), 108)
------------------------------
11:30:58
3. 날짜(연산) -> 문자열 (Style 108)
SELECT CONVERT(nvarchar(30), GetDate()+'12:00:00', 108)
------------------------------
23:30:58
4. 16진수 -> 문자형(4 Bytes)
SELECT CONVERT(char(8), 0x4E616D65, 0)
--------
Name
5. 문자형 -> Binary 형(4 Bytes)
SELECT CONVERT(binary(8), 'NAME', 2)
------------------
0x4E414D4500000000
'mssql' 카테고리의 다른 글
[MSSQL2005] 엑셀 데이터 가져오기/내보내기 (0) | 2016.01.27 |
---|---|
VS 2008 설치후 MS-SQL 2005 설치 안 될때 (0) | 2016.01.27 |
MS-SQL vs. ORACLE 함수 비교 (0) | 2016.01.27 |
mssql에서 auto increment값 가져오기 (0) | 2016.01.27 |
MSSQL 복원사용자계정이 있을때 계정 매핑 (0) | 2016.01.27 |