'.NET > MS-SQL' 카테고리의 다른 글
[SQL CE] SQL Server Compact - 버전별 새로운 기능 (0) | 2013.08.05 |
---|---|
[MS-SQL] 임시테이블, 전역 임시테이블 (0) | 2013.07.24 |
[MS-SQL] Group By 예제 (0) | 2013.07.24 |
[MS-SQL] 프로파일러 및 튜닝어드바이서 사용법 (0) | 2013.06.14 |
프로시저 기본 템플릿 (0) | 2013.05.10 |
[SQL CE] SQL Server Compact - 버전별 새로운 기능 (0) | 2013.08.05 |
---|---|
[MS-SQL] 임시테이블, 전역 임시테이블 (0) | 2013.07.24 |
[MS-SQL] Group By 예제 (0) | 2013.07.24 |
[MS-SQL] 프로파일러 및 튜닝어드바이서 사용법 (0) | 2013.06.14 |
프로시저 기본 템플릿 (0) | 2013.05.10 |
[MS-SQL] 임시테이블, 전역 임시테이블 (0) | 2013.07.24 |
---|---|
[MS-SQL] 성능모니터 간략설명 (0) | 2013.07.24 |
[MS-SQL] 프로파일러 및 튜닝어드바이서 사용법 (0) | 2013.06.14 |
프로시저 기본 템플릿 (0) | 2013.05.10 |
[닷넷] ms sql 내장함수 (0) | 2013.02.07 |
원문 : How to Use SQL Server Profiler and Tuning Advisor
How to Use SQL Server Profiler and Tuning Advisor.pdf
[MS-SQL] 성능모니터 간략설명 (0) | 2013.07.24 |
---|---|
[MS-SQL] Group By 예제 (0) | 2013.07.24 |
프로시저 기본 템플릿 (0) | 2013.05.10 |
[닷넷] ms sql 내장함수 (0) | 2013.02.07 |
[MS-SQL] 순위 함수 (0) | 2013.02.07 |
USE [Database명]
GO
-- 만약 동일한 프로시저 있다면 Drop 시킨다.
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'프로시저명') AND type in (N'P', N'PC'))
DROP PROCEDURE dbo.프로시저명
GO
CREATE PROCEDURE dbo.프로시저명
(
@id integer,
@title varchar(24),
@content text
)
AS
[MS-SQL] 성능모니터 간략설명 (0) | 2013.07.24 |
---|---|
[MS-SQL] Group By 예제 (0) | 2013.07.24 |
[MS-SQL] 프로파일러 및 튜닝어드바이서 사용법 (0) | 2013.06.14 |
[닷넷] ms sql 내장함수 (0) | 2013.02.07 |
[MS-SQL] 순위 함수 (0) | 2013.02.07 |
[닷넷] ms sql 내장함수 | | | 당산 PA |
![]() |
/ | 2011.05.13 16:31 |
-- 숫자 함수
-- 값 , 근사치
select ABS(-1);
select ABS(8-9);
select CEILING(-9.5), CEILING(9.2); --매개변수와 가까운 큰 정수 출력
select FLOOR(-9.5), FLOOR(9.2); -- 매개변수와 가까운 작은 정수 출력
select POWER(2,3); -- 2에 3승을 출력
select RAND() * 1000; -- 0 과 1 사이의 난수 발생
select ROUND(RAND() * 100,0);
select ROUND(3.141592, 1),round(3.141592,2),round(3.141592, 3); --(실수 , 소수점반올림자리수)
select ROUND(173.141592,0),round(173.141592,-1),round(173.141592,-2);
select EXP(1) as 자연로그;
--문자함수
select ASCII('a'), ASCII('A'); --ascii 문자열을 해당하는 값을 출력
select ASCII('ㄱ'), ASCII('ㅏ'), ASCII('가'), ASCII('뷁'); --한글 조합형을 사용
SELECT CHAR(65); --아스키 코드값을 문자로 출력
select CHARINDEX('T', 'KH DOT NET', 1); --SQL 인덱스는 1부터 시작함
--CHARINDEX(검색식 , 검색할 식 , 시작 위치)
select LEFT('1234567890', 4);
select right('1234567890', 4);
select reverse('KH DOT NET'); --반전
select REPLICATE('★', 7);
select REPLACE('KH DOT NET', 'T', 'E');
select LTRIM(' KH DOT NET'); --공백제거
select RTRIM('KH DOT NET '); --공백제거
select len(RTRIM('KH DOT NET '));
select LOWER('KH DOT NET'); --대문자 => 소문자
select UPDATE('kh dot net') --소문자 => 대문자
select STUFF('KH DOT NET', 2 , 3 , 'EEZ'); --문자 대체 확장
select substring('KH DOT NET', 2, 3); --SUBSTRING(식 , 시작위치 , 길이)
--범위를 지정해서 문자열을 출력할수 있음.
--날자 및 시간 함수
select getdate() -- 현재 시스템의 날짜를 가저온다. (시스템에 설정된 나라의 형식을 따른다.)
select YEAR('2011-05-13'); -- 년을 뽑는다
select MONTH('2011-05-13'); -- 월을 뽑는다
select DAY('2011-05-13'); -- 일을 뽑는다
select Year(getdate()),month(getdate()),day(getdate()) -- 년,월,일 을 뽑는다
select DATENAME(WEEKDAY, 2); -- 특정 요일을 뽑는다.
select DATENAME(WEEK,10); -- 특정 날짜 부분주
select getdate() ,datename(Weekday,getdate()); -- 요일을 뽑는다
select datediff(yy,'1945-08-15',getdate()); -- 적어준 날의 년과 현재날의 년과의 차이를 출력
select DATEDIFF(MM, '1945-08-15', GETDATE()); -- 적어준 날의 월과 현재 날의 월과의 차이를 출력
select datediff(dd,'1945-08-15',getdate()) -- 적어준 날의 일과 현재날의 일과의 차이를 출력
select DATEADD(MONTH, 1, GETDATE()); -- 날자 지정해서 뽑을수 있다. 한달 전
select DATEADD(MONTH, -1, GETDATE()); --날자 지정해서 뽑을수 있다. 한달 후
select DATEPART(MONTH,GETDATE()); --지정한 날짜의 특정 날짜 부분을 나타내는 문자열을 반환
select ISDATE('20110513'); --해당 문자열이 datatime이면 `1 , 아니면 0
select ISDATE('AA'); --해당 문자열이 datatime이면 `1 , 아니면 0
[출처] [닷넷] ms sql 내장함수 (IT 전문가 취업 불패 (사)KH정보교육원) |작성자 종원
[MS-SQL] 성능모니터 간략설명 (0) | 2013.07.24 |
---|---|
[MS-SQL] Group By 예제 (0) | 2013.07.24 |
[MS-SQL] 프로파일러 및 튜닝어드바이서 사용법 (0) | 2013.06.14 |
프로시저 기본 템플릿 (0) | 2013.05.10 |
[MS-SQL] 순위 함수 (0) | 2013.02.07 |
|
1. ROW_NUMBER() OVER(ORDER BY 정렬할 필드)
2. RANK() OVER(ORDER BY 정렬할 필드)
3. DENSE_RANK() OVER(ORDER BY 정렬할 필드)
세 가지 함수 모두 순위를 구하는 용도로 사용이 가능하다. 그러나 조금씩 용법이 다르다.
1. ROW_NUMBER() OVER()
- 순위를 구하기는 하나 같은 값에 대하여 무시를 한다.
2. RANK() OVER()
- 같은 값은 동등한 순위로 값을 반환한다. 예로 100, 95, 95, 84, 70, 70, 56 이라는 값이 있을 때 결과값은 1, 2, 2, 4, 5, 5, 7 이 된다.
3. DENSE_RANK() OVER()
- 같은 값을 동등한 순위로 값을 반환한다. 하지만 RANK()와 다르게 동등한 순위의 다음 순위는 순차적으로 메겨진다. 2번과 같은 예가 있을 경우 RANK()의 결과값은 1, 2, 2, 4, 5, 5, 7 이 되었지만, DENSE_RANK() OVER() 는 1, 2, 2, 3, 4, 4, 5가 된다.
실제 사용 예제)
1. ROW_NUMBER() OVER(ORDER BY 정렬할 필드)
2. RANK() OVER(ORDER BY 정렬할 필드)
3. DENSE_RANK() OVER(ORDER BY 정렬할 필드)
3.
[MS-SQL] 성능모니터 간략설명 (0) | 2013.07.24 |
---|---|
[MS-SQL] Group By 예제 (0) | 2013.07.24 |
[MS-SQL] 프로파일러 및 튜닝어드바이서 사용법 (0) | 2013.06.14 |
프로시저 기본 템플릿 (0) | 2013.05.10 |
[닷넷] ms sql 내장함수 (0) | 2013.02.07 |