반응형
반응형

mssql  줄바꿈 치환

 


 REPLACE(REPLACE(CONTENT, char(13) , '' ) ,  char(10), '' ) 





* 줄바꿈, 탭문자 제거 방법(text 타입도 포함)



- 변경 스트링 함수

replace([컬럼명], [변경할 문자], [변경될 문자])


- 엔터, 탭 문자 제거 함수 활용

Tab : char(9)

Line feed: char(10)

Carriage return: char(13)



>엔터 : replace(replace([컬럼명], char(13), ''), char(10), '')

>탭 : replace([컬럼명], char(9), '')

 


 텍스트 타입일 경우, [replace 함수의 인수 1에 대한 인수 데이터 형식 text이(가) 잘못되었습니다.] 에러를 확인할 수 있다.


=> replace(convert(varchar(max), [컬럼명]), [변경할 문자], [변경될 문자])


 

 

반응형
반응형

SET IDENTITY_INSERT(Transact-SQL)

명시적 값을 테이블의 ID 열에 삽입할 수 있도록 합니다.



언제든지 세션에서 한 테이블의 IDENTITY_INSERT 속성만 ON으로 설정할 수 있습니다. 한 테이블에 이 속성이 ON으로 설정되어 있는데 다른 테이블에 대해 SET IDENTITY_INSERT ON 문을 실행하면 SQL Server는 SET IDENTITY_INSERT가 이미 ON으로 설정되어 있음을 알리고 ON으로 설정된 테이블을 보고하는 오류 메시지를 반환합니다.

테이블의 현재 ID 값보다 큰 값을 삽입하면 SQL Server는 자동으로 새로 삽입한 값을 현재 ID 값으로 사용합니다.

SET IDENTITY_INSERT 옵션은 실행 시간 또는 런타임에 설정되며, 구문 분석 시에는 설정되지 않습니다.



반응형
반응형

Realmβ

Realm (렘) 은 모바일 데이터베이스 입니다: SQLite, OrmLite, greenDAO 또는 Core Data를 대체하여 사용하실 수 있습니다. 
Realm을 사용해서 더 빨리 개발하고 더 빨리 동작하는 최고의 앱을 만들 수 있습니다.



Realm


https://github.com/realm




반응형
반응형

 

 

분석용 함수

 

RANK - 해당값에 대한 우선순위를 결정 (중복 우선순위 허용)

 

DENSE_RANK - 해당값에 대한 우선순위를 결정 (중복 우선순위 허용 안함)

 

ROW_NUMBER - 조건을 만족하는 모든 행의 번호를 제공

 

CUME_DIST - 분산값

 

PERCENT_RANK - 백분율

 

NTILE(n) - 전체 데이터 분포를 n-Buckets으로 나누어 표시

 

FIRST_VALUE - 정렬된 값중에서 첫번째 값을 반환.

 

LAST_VALUE - 정렬된 값중에서 마지막 값을 반환.

 

 

OVER() 에 사용되는 OPTION

 

1. PARTITION BY
2. ORDER BY DESC
3. NULLS FIRST : NULL 데이터를 먼저 출력.
4. NULLS LAST : NULL 데이터를 나중에 출력.


 

반응형

'프로그래밍 > DataBase' 카테고리의 다른 글

[MSSQL] SET IDENTITY_INSERT(Transact-SQL)  (0) 2014.11.24
Realmβ - 모바일DB 렘  (0) 2014.09.30
[MSSQL] IDENT_CURRENT(Transact-SQL)  (0) 2014.04.07
[ORACLE] 달력만들기  (0) 2014.04.01
[DB] transaction, commit, rollback  (0) 2014.02.12
반응형

IDENT_CURRENT(Transact-SQL)

 

지정된 테이블 또는 뷰에 대해 생성된 마지막 ID 값을 반환합니다. 생성된 마지막 ID 값은 임의의 세션 및 범위에 대한 값일 수 있습니다.

 

 

* Link : http://technet.microsoft.com/ko-kr/library/ms175098.aspx - IDENT_CURRENT

           http://technet.microsoft.com/ko-kr/library/ms187342.aspx - @@IDENTITY

 

 

IDENT_CURRENT는 SQL Server 2000 IDENTITY 함수 SCOPE_IDENTITY 및 @@IDENTITY와 유사합니다. 이 세 함수는 모두 최근에 생성된 ID 값을 반환합니다. 그러나 각 함수에서 최근이 정의하는 범위와 세션은 각기 다릅니다.


IDENT_CURRENT는 임의의 세션과 범위에 있는 특정 테이블에 대해 최근 생성된 ID 값을 반환합니다.


@@IDENTITY는 현재 세션의 전체 범위에 걸쳐 임의의 테이블에 대해 최근 생성된 ID 값을 반환합니다.


SCOPE_IDENTITY는 현재 세션 및 현재 범위에 있는 임의의 테이블에 대해 최근 생성된 ID 값을 반환합니다.


IDENT_CURRENT 값이 NULL인 경우(테이블에 행이 포함된 적이 없거나 테이블이 잘린 경우) IDENT_CURRENT 함수는 초기값을 반환합니다.


문 및 트랜잭션이 실패하면 테이블의 현재 ID가 변경되고 ID 열 값 간에 간격이 생성될 수 있습니다. 테이블에 값을 삽입하려고 시도한 트랜잭션이 커밋되지 않아도 ID 값은 롤백되지 않습니다. 예를 들어 IGNORE_DUP_KEY 위반으로 인해 INSERT 문이 실패하더라도 테이블의 현재 ID 값은 여전히 증가합니다.


IDENT_CURRENT를 사용하여 다음에 생성되는 ID 값을 예측할 때 유의합니다. 다른 세션에서 삽입 작업을 수행하므로 실제로 생성된 값은 IDENT_CURRENT에 IDENT_INCR을 더한 값과 다를 수 있습니다.

 

 

USE AdventureWorks2012;
GO
IF OBJECT_ID(N't6', N'U') IS NOT NULL 
    DROP TABLE t6;
GO
IF OBJECT_ID(N't7', N'U') IS NOT NULL 
    DROP TABLE t7;
GO
CREATE TABLE t6(id int IDENTITY);
CREATE TABLE t7(id int IDENTITY(100,1));
GO
CREATE TRIGGER t6ins ON t6 FOR INSERT 
AS
BEGIN
   INSERT t7 DEFAULT VALUES
END;
GO
--End of trigger definition

SELECT id FROM t6;
--IDs empty.

SELECT id FROM t7;
--ID is empty.

--Do the following in Session 1
INSERT t6 DEFAULT VALUES;
SELECT @@IDENTITY;
/*Returns the value 100. This was inserted by the trigger.*/

SELECT SCOPE_IDENTITY();
/* Returns the value 1. This was inserted by the 
INSERT statement two statements before this query.*/

SELECT IDENT_CURRENT('t7');
/* Returns value inserted into t7, that is in the trigger.*/

SELECT IDENT_CURRENT('t6');
/* Returns value inserted into t6. This was the INSERT statement four statements before this query.*/

-- Do the following in Session 2.
SELECT @@IDENTITY;
/* Returns NULL because there has been no INSERT action 
up to this point in this session.*/

SELECT SCOPE_IDENTITY();
/* Returns NULL because there has been no INSERT action 
up to this point in this scope in this session.*/

SELECT IDENT_CURRENT('t7');
/* Returns the last value inserted into t7.*/

 

 

 


 

반응형
반응형

오라클 달력 만들기

 

-- 달력 만들기

/*  -- ORACLE

    SELECT 일,월,화,수,목,금,토
      FROM (  SELECT TRUNC  (dt + LEVEL - 1, 'd' ) w
                   , TO_CHAR(dt + LEVEL - 1, 'd' ) d
                   , TO_CHAR(dt + LEVEL - 1, 'dd') dd
                FROM (SELECT TO_DATE('201402','yyyymm') DT FROM DUAL)
             CONNECT BY LEVEL <= LAST_DAY(dt) - dt + 1
           )
     PIVOT (MIN(DD) FOR d IN ( 1 일, 2 월, 3 화, 4 수, 5 목, 6 금, 7 토))
     ORDER BY w
*/

반응형

+ Recent posts