sequence
-------------------------->

CREATE TABLE Sequence_Test
(
    Seq INT, Val VARCHAR(5)
)
GO

CREATE SEQUENCE SeqTest
START WITH 1
INCREMENT BY 1 ;
GO

INSERT INTO Sequence_Test(Seq, Val)
VALUES (NEXT VALUE FOR SeqTest, 'test')
GO 3

 

SELECT * FROM Sequence_Test
GO

//결과값
Seq Val
1 test
2 test
3 test

<--------------------------

 

OFFSET / FETCH
------------------------>

ORDER BY IDX DESC
OFFSET (@PAGE - 1) * @PAGESIZE ROWS
FETCH NEXT @PAGESIZE ROWS ONLY

<------------------------

 

THROW
--------------------------------->

BEGIN TRY

             INSERT [HumanResources].[Department] (Name, GroupName)

             VALUES ('Engineering','Manufacturing')

END TRY

BEGIN CATCH

              THROW 50001,'부서 이름 중복',1;

 

END CATCH

 

--(0 행이 영향을 받음)

--메시지 50001, 수준 16, 상태 1, 7

--부서 이름 중복

 

매개변수 없이 지정 된 THROW CATCH 블럭 내 정의

 - THROW 문이 발생하면 일괄 처리 종료
 - THROW 가 발생할 경우 심각도 16 발생
 - THROW 을 정의할 경우 세미콜론(;) 종결자 필요

<--------------------------

 

 

EXECUTE WITH RESULT SETS

--------------------------->

image_8.png

 <------------------------------------------

 

EOMONTH

-------------------------------------->

DECLARE @DT1 VARCHAR(10);

DECLARE @DT2 DATETIME;

 

SET @DT1 = '2012-02-20';

SET @DT2 = CONVERT(DATETIME, @DT1);

 

SELECT

        EOMONTH(@DT1) AS 'EOMONTH(@DT1)',

        EOMONTH(@DT2) AS 'EOMONTH(@DT2)',

        EOMONTH(@DT1,2) AS 'EOMONTH(@DT1,2)',

        EOMONTH(@DT2,2) AS 'EOMONTH(@DT2,2)'

 

 

2.png 

<---------------------------------------------

 

DATEFROMPARTS 

--------------------------------------->

DATEFROMPARTS ( year, month, day )

예제
SELECT DATEFROMPARTS ( 2010, 12, 31 ) AS Result;

결과값  : 2010-12-31

<---------------------------------------

'개발 > DB' 카테고리의 다른 글

WITH절과 CTE (비재귀적)  (0) 2015.05.21
MSSQL 컬럼추가, 수정, 삭제  (0) 2015.05.14
N 따옴표 [N']  (0) 2015.03.09
IF 조건문 EXISTS 사용 예 (값 유무 체크)  (0) 2015.03.05
MS-SQL 문법정리  (0) 2015.03.05

+ Recent posts