728x90
반응형
728x170
▶ 문자열에서 테이블 생성하기 예제
SELECT * FROM CreateTableFromString('고수/이나영/손예진/김사랑/박예진', '/');
728x90
▶ 문자열에서 테이블 생성하기
CREATE FUNCTION [dbo].[CreateTableFromString]
(
@P_String NVARCHAR(MAX) -- 문자열
,@P_Separator NVARCHAR(10) -- 분리자
)
RETURNS @Result TABLE(Item NVARCHAR(100))
AS
BEGIN
DECLARE @Item VARCHAR(MAX);
WHILE CHARINDEX(@P_Separator, @P_String) <> 0 OR LEN(RTRIM(@P_String)) > 0
BEGIN
IF CHARINDEX(@P_Separator, @P_String) = 0
BEGIN
SET @Item = @P_String;
SET @P_String = '';
END
ELSE
BEGIN
SELECT @Item = SUBSTRING(@P_String, 0, CHARINDEX(@P_Separator, @P_String));
SET @P_String = SUBSTRING(@P_String, CHARINDEX(@P_Separator, @P_String) + 1, LEN(@P_String));
END
INSERT INTO @Result(Item) VALUES (@Item);
END
RETURN;
END
GO
728x90
반응형
그리드형(광고전용)
'Database > SQLServer' 카테고리의 다른 글
[DATABASE/SQLSERVER] 테이블 전체 행 수 구하기 (0) | 2014.12.05 |
---|---|
[DATABASE/SQLSERVER] 숫자 구분자 표시하기 (세자리 마다 콤마 표시하기) (0) | 2014.12.05 |
[DATABASE/SQLSERVER] GUID 구하기 (0) | 2014.12.05 |
[DATABASE/SQLSERVER] 임의로 1건 추출하기 (0) | 2014.12.05 |
[DATABASE/SQLSERVER] 시간대별로 1건씩 추출하기 (0) | 2014.12.05 |
[DATABASE/SQLSERVER] 저장 프로시저 정보 구하기 (0) | 2014.12.05 |
[DATABASE/SQLSERVER] 테이블 정보 구하기 (0) | 2014.12.05 |
[DATABASE/SQLSERVER] CPU 점유율 높은 SQL문 조회하기 (0) | 2014.12.05 |
[DATABASE/SQLSERVER] CURSOR 사용하기 (0) | 2014.12.05 |
[DATABASE/SQLSERVER] 페이징 조회하기 (SELECT문) (0) | 2014.12.05 |
댓글을 달아 주세요