티스토리 툴바

블로그 이미지
열심히 배우고자 하는 개발자들의 팀 블로그 입니다. 나머지 동료들을 모집 합니다. (루피, 조로, 우솝은 있습니다.) JMSOFT

카테고리

분류 전체보기 (16)
ASP.NET (3)
C# (1)
Silverlight (0)
WPF (0)
WCF (0)
C/C++ (1)
MFC (0)
SQLServer2008 (2)
SQL (6)
Transact-SQL (2)
WindowsServer2008 (1)
Total995
Today0
Yesterday1

SQL Server 에서 제공해 주는 시스템 함수에 대한 사용 방법 입니다.


-- 변환 함수 CONVERT
SELECT CONVERT(INT, '12345')                                  -- 문자열 -> 정수형
SELECT TOP 10 NAME, CONVERT(CHAR(10), NAME)    -- 문자열 -> CHAR(10)
FROM AdventureWorks.Production.Product


-- 날짜를 여러가지 형식으로 변환
SELECT GETDATE()         
SELECT CONVERT(VARCHAR(30), GETDATE())
SELECT CONVERT(VARCHAR(30), GETDATE(), 100)
SELECT CONVERT(VARCHAR(25), GETDATE(), 111) AS N'한국날짜'
SELECT CONVERT(VARCHAR(25), GETDATE(), 101) AS N'미국날짜'
SELECT REPLACE
    (CONVERT(VARCHAR(25), GETDATE(), 111),'/','-')  AS N'한국날짜YYYY-MM-DD'

-- 날짜 및 시간 함수
SELECT GETDATE()
SELECT SYSDATETIME()
SELECT SYSDATETIMEOFFSET()

SELECT DATEADD(DD, 10, GETDATE())      -- + 10일 (일을 더함)
SELECT DATEADD(MM, 10, GETDATE())     -- + 10월 (달을 더함)
SELECT DATEADD(YY, 10, GETDATE())      -- + 10년 (년을 더함)
SELECT DATEADD(WW, 10, GETDATE())      -- + 10주 (주를 더함)


-- 2000-01-01 ~ 현재 날짜 사이의 일수
SELECT DATEDIFF(DD, '20000101', GETDATE())   
-- 2000-01-01 ~ 현재 날짜 사이의 달수
SELECT DATEDIFF(MM, '20000101', GETDATE())  
-- 2000-01-01 ~ 현재 날짜 사이의 년수 
SELECT DATEDIFF(YY, '20000101', GETDATE())   
-- 2000-01-01 ~ 현재 날짜 사이의 주수
SELECT DATEDIFF(WW, '20000101', GETDATE()) 
  

SELECT DAY(GETDATE())                      -- 현재 날짜의 일
SELECT MONTH(GETDATE())                 -- 현재 날짜의 월
SELECT YEAR(GETDATE())                    -- 현재 날짜의 년

SELECT DATENAME(DW, GETDATE())      -- 현재 날짜의 요일

-- 문자열 함수
SELECT LEFT('ABCDEF', 3) AS LEFT1        -- 왼쪽 부터 3자리 절삭
SELECT RIGHT('ABCDEF', 3) AS RIGHT1     -- 오른쪽 부터 3자리 절삭
-- 'ABCDEF' 문자열의 2번째 자리 부터 3자리 출력
SELECT SUBSTRING('ABCDEF', 2,3) AS SUBSTRING1  

SELECT LEFT('  ABCDEF', 3) AS LEFT2       -- 공백도 자리수에 포함
SELECT RIGHT('ABCDEF  ', 3) AS RIGHT2    -- 공백도 자리수에 포함

SELECT LTRIM('   ABCDEF') AS LTRIM1        -- 왼쪽 공백 삭제
SELECT RTRIM('ABCDEF   ') AS RTRIM1        -- 오른쪽 공백 삭제

SELECT LOWER('ABCDEF')        -- 소문자로
SELECT UPPER('abcdef')           -- 대문자로

SELECT LEN('ABCDEF')        -- 문자열 길이
SELECT LEN('홍길동')           -- 문자열 길이

-- 'C' 가 'ABCDEF' 문자열에서 몇 번째 위치에 있는지 확인
SELECT CHARINDEX('C', 'ABCDEF')      
 -- 'ABCDEF' 문자열에서 'C'를 'X'로 변환
SELECT REPLACE('ABCDEF', 'C', 'X')    

저작자 표시 비영리 변경 금지
Posted by JMSOFT

최근에 받은 트랙백

글 보관함