블로그 이미지
baragi76

카테고리

분류 전체보기 (115)
생활 (10)
My Story (34)
My Album (1)
HomePage (0)
Hobbies (21)
Develop (42)
Utility (1)
Project (6)
09-26 03:25
Total241,001
Today1
Yesterday21

공지사항

달력

« » 2020.9
    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      

안정적인 DNS서비스 DNSEver

 

MS SQL 쿼리 실행 시간 체크...

SET STATISTICS TIME ON

 

 

참조~ : http://technet.microsoft.com/ko-kr/library/ms190287(v=sql.90).aspx

 

 

위 코드를 넣고 Query를 작성하면...

Query를 실행한 시간에 대한 결과치를 보여줌....

 

 SQL Server 실행 시간:
 CPU 시간 = 0밀리초, 경과 시간 = 26밀리초

이 장소를 Daum지도에서 확인해보세요.
서울특별시 중구 소공동 | 서울 중구 을지로1가
도움말 Daum 지도
Posted by baragi76

댓글을 달아 주세요

간단한 코드지만... 헷갈릴때가 많이 있다...

까먹어서 한참을 헤매일때도... ^^


/*

TB_REF 테이블의 REF_COLUMN 컬럼 데이터와 동일한 

TB_TARGET 테이블의 TARGET_COLUMN 컬름이 있으면 해당 레코드 삭제...

*/


DELETE [dbo].[TB_TARGET]

WHERE  TARGET_COLUMN IN (SELECT REF_COLUMN FROM [dbo].[TB_REF] WITH(NOLOCK))



/*

TB_REF 테이블의 모든 값을  

TB_TARGET 테이블에 동일 데이터 삽입 후 ADDFIELD 값을 'Y'로 하여 INSERT

*/


INSERT INTO [dbo].[TB_TARGET]

SELECT REF.*, ADDFIELD='Y'

FROM [dbo].[TB_REF] AS REF WITH(NOLOCK)


Posted by baragi76

댓글을 달아 주세요

컬럼 데이터중...
파일 Path같이 디렉토리 구조라던가 특정 구분자로 나눠져있는 문자열에 대해~
구분자 끝의 문자열을 잘라오고자 한다면...

REVERSE([string]) : 문자열 뒤집기
ex) reverse('012/345/678/9') --> '9/876/543/210'

CHARINDEX([string], [string]) : 문자 위치 찾기
ex) charindex('/', '012/345/678/9') --> 4

SUBSTRING ([string], [intA], [intB]) : 문자의 특정위치 문자 추출 ( [intA]번째 문자부터 [intB]개의 문자만큼 )
ex) substring('012/345/678/9', 4, 5 ) --> '/345/'

LEN([string]) : 문자수
ex) len('012/345/678/9') --> 13


위의 기본 Function을 이용하여 '012/345/678/901.doc' 파일 Path에서 파일명을 추출하면...
아래와 같은 형식인데...

DECLARE @file_path VARCHAR(100)
SET @file_path = '012/345/678/901.doc'
print SUBSTRING( @file_path , (LEN( @file_path ) - CHARINDEX('/', REVERSE@file_path ))+2), LEN( @file_path )) 


결과 : '901 .doc'

다른 더 좋은 방법이 있는지... ^^;;  
Posted by baragi76

댓글을 달아 주세요

### 참조코드...

-- 루프를 돌리기위한 기준
DECLARE DocNo CURSOR FOR
   SELECT IDX
   FROM TB_WD2_FMIT001_BUYINFOBYSTATUS WITH (NOLOCK)
   WHERE EXTENDPROCESS = '' AND SEQNO = ''
   Order by IDX
 DECLARE @docno INT

-- 루프를 돌려 처리~~
 OPEN DocNo
 FETCH DocNo INTO @docno
 WHILE (@@FETCH_STATUS = 0)
 BEGIN 
-- 뺑뺑이 돌리는 코드(시작)   
-- SeqNo 다음 번호 계산
   SET @iSeqNo = @iSeqNo + 1
     
   -- 3자리수로 처리
   SET @vSeqNo = '000' + CONVERT( VARCHAR(10), @iSeqNo)
   SET @vSeqNo = SUBSTRING( @vSeqNo, LEN(@vSeqNo)-2, LEN(@vSeqNo))
   SET @vSeqNo = @vNowMonth + '-' + @vSeqNo
   --PRINT @vSeqNo
     
   SET @tmpQuery = 'UPDATE TB_WD2_FMIT001_BUYINFOBYSTATUS
   SET SEQNO = ''' + @vSeqNo + '''
    EXTENDPROCESS = ''Yes''
   WHERE IDX = ' + CONVERT( VARCHAR, @docno )
   
   print @tmpQuery
         -- EXEC sp_executesql @tmpQuery
-- 뺑뺑이 돌리는 코드(종료)         
   FETCH DocNo INTO @docno
 END
        
 CLOSE DocNo
 DEALLOCATE DocNo

Posted by baragi76

댓글을 달아 주세요


기본적인 데이터 삭제...
DELETE FROM table_name WHERE column_name = 'xx'

만약 테이블에 IDENTITY가 정의되어 있는 상태에서 이 IDENTITY 값을 초기화 하려면?? 보통적으로
TRUNCATE TABLE table_name
으로 초기화를 하는데....
몇개의 테이블에 Relation이 걸려 있다면...
[한글 기준] "FOREIGN KEY 제약 조건에 의해 참조되므로 자를 수 없습니다." 라는 오류 메시지가 발생한다...
이런 경우 IDENTITY 값을 초기화 하려면....

DELETE FROM table1_name
DELETE FROM table2_name
DBCC CHECKIDENT('table1_name', RESEED, 0 )

위와 같이 하면 table1_name 테이블의 IDENTITY 값을 0으로 초기화 한다...

자세한 내용은
http://msdn.microsoft.com/ko-kr/library/ms176057.aspx 참조...
Posted by baragi76

댓글을 달아 주세요

CONVRT 문에 대해...

Develop/SQL / 2010. 10. 8. 19:11
[펌]
수식의 자료형을 변화시킨다.

  - CONVERT(datatype[(length)], expression[,style])

  - 수식이 허용되는 어느 곳에서도 사용 될 수 있다.

 

SELECT CONVERT (char(38), title)+"의 가격은" + CONVERT
(varchar(10), price) +"달라 입니다."
  FROM titles


흠...

다음으로 날짜를... 스타일에 따라 다양하게 보여줍니다.

 

Without
century
(yy)

With
century
(yyyy)



Standard



Input/Output**

-

0 or 100 (*)

Default

mon dd yyyy hh:miAM (or PM)

1

101

USA

mm/dd/yy

2

102

ANSI

yy.mm.dd

3

103

British/French

dd/mm/yy

4

104

German

dd.mm.yy

5

105

Italian

dd-mm-yy

6

106

-

dd mon yy

7

107

-

mon dd, yy

8

108

-

hh:mm:ss

-

9 or 109 (*)

Default + milliseconds

mon dd yyyy hh:mi:ss:mmmAM (or PM)

10

110

USA

mm-dd-yy

11

111

JAPAN

yy/mm/dd

12

112

ISO

yymmdd

-

13 or 113 (*)

Europe default + milliseconds

dd mon yyyy hh:mm:ss:mmm(24h)

14

114

-

hh:mi:ss:mmm(24h)

-

20 or 120 (*)

ODBC canonical

yyyy-mm-dd hh:mi:ss(24h)

-

21 or 121 (*)

ODBC canonical (with milliseconds)

yyyy-mm-dd hh:mi:ss.mmm(24h)

*    The default values (style 0 or 100, 9 or 109, 13 or 113, 20 or 120, and 21 or 121) always return the century (yyyy).

** Input when converting to datetime; Output when converting to character data.


잘 모르겠네요... 저역시... 그렇다면 질의를 수행해 봐야죠 ^_^


SELECT CONVERT (char(30), GETDATE(), 102)


[출처] www.sqler.pe.kr

Posted by baragi76
TAG Convert, SQL

댓글을 달아 주세요