반응형
김종열
MS SQL Server MVP
엔트리브 소프트
다른 커뮤너티에서 10진수를 다른 진법의 수로 변환하는가에 대한 질문이 있더군요.
해서 간단한 FUNCTION을 하나 만들어봤습니다.
다음은 UDF_NOTATION.CS의 파일입니다.
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Server;
public partial class UserDefinedFunctions
{
[Microsoft.SqlServer.Server.SqlFunction]
public static SqlString UDF_NOTATION(int oNum, int nNum)
{
try
{
string _not = Convert.ToString(oNum, nNum);
return (SqlString)_not;
}
catch
{
return null;
}
}
};
인자가 수가 먼저 들어온다는 점을 감안하셔야겠죠 ^^,
즉 16진수의 경우는 문자가 포함된 숫자임에도 이는 다시 10진수로 못 나타낸다는 이야기겠죠.
배포를 하시고 나시면 다음과 같은 쿼리로 확인을 해보십시오.
SELECT DBO.UDF_NOTATION(255, 16)
-----
ff
(1 row(s) affected)
반응형
'연구개발 > CLR' 카테고리의 다른 글
CLR - EXCEL 파일 읽기 (0) | 2009.06.22 |
---|---|
CLR - 쿼리의 결과를 파일로 저장하기 (0) | 2009.06.22 |
CLR - SQL CLR ARCHITECTURE (0) | 2009.06.22 |
CLR - 문자열 중 숫자만 반환하는 FUNCTION (0) | 2009.06.22 |
CLR 강좌 - GREATEST_LEAST 구현하기 (0) | 2009.06.22 |