CREATE FUNCTION dbo.fnBinaryPattern
(@Byte TINYINT)
RETURNS CHAR(8)
AS
BEGIN
DECLARE @Pattern CHAR(8)
SET @Pattern = ''
SELECT @Pattern = convert(VARCHAR,+(@Byte & 1) / 1) +
convert(VARCHAR,(@Byte & 2) / 2) +
convert(VARCHAR,(@Byte & 4) / 4) +
convert(VARCHAR,(@Byte & 8) / 8) +
convert(VARCHAR,(@Byte & 16) / 16) +
convert(VARCHAR,(@Byte & 32) / 32) +
convert(VARCHAR,(@Byte & 64) / 64) +
convert(VARCHAR,(@Byte & 128) / 128)
RETURN reverse(@Pattern)
END
GO
select dbo.fnBinaryPattern(0)
go
00000000
(@Byte TINYINT)
RETURNS CHAR(8)
AS
BEGIN
DECLARE @Pattern CHAR(8)
SET @Pattern = ''
SELECT @Pattern = convert(VARCHAR,+(@Byte & 1) / 1) +
convert(VARCHAR,(@Byte & 2) / 2) +
convert(VARCHAR,(@Byte & 4) / 4) +
convert(VARCHAR,(@Byte & 8) / 8) +
convert(VARCHAR,(@Byte & 16) / 16) +
convert(VARCHAR,(@Byte & 32) / 32) +
convert(VARCHAR,(@Byte & 64) / 64) +
convert(VARCHAR,(@Byte & 128) / 128)
RETURN reverse(@Pattern)
END
GO
select dbo.fnBinaryPattern(0)
go
00000000
No comments:
Post a Comment