⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 md5.sql

📁 tsql md5函数
💻 SQL
📖 第 1 页 / 共 2 页
字号:
   @a    INT 
  ,@b    INT 
  ,@c    INT 
  ,@d    INT 
  ,@x    INT 
  ,@s   INT 
  ,@ac  INT 
) 
RETURNS INT 
WITH ENCRYPTION 
AS 
BEGIN 
  SET @a = dbo.MD5_AddUnsigned(@a, dbo.MD5_AddUnsigned(dbo.MD5_AddUnsigned(dbo.MD5_H(@b, @c, @d), @x), @ac)) 
  SET @a = dbo.MD5_RotateLeft(@a, @s) 
  SET @a = dbo.MD5_AddUnsigned(@a, @b) 
  RETURN(@a) 
END 
GO 

IF EXISTS(SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[MD5_II]') AND xtype IN(N'FN', N'IF', N'TF')) 
  DROP FUNCTION [dbo].[MD5_II] 
GO 
/***************************************************************************** 
* Name: MD5_II 
* Description: MD5_II 
*****************************************************************************/ 
CREATE FUNCTION dbo.MD5_II( 
   @a    INT 
  ,@b    INT 
  ,@c    INT 
  ,@d    INT 
  ,@x    INT 
  ,@s   INT 
  ,@ac  INT 
) 
RETURNS INT 
WITH ENCRYPTION 
AS 
BEGIN 
  SET @a = dbo.MD5_AddUnsigned(@a, dbo.MD5_AddUnsigned(dbo.MD5_AddUnsigned(dbo.MD5_I(@b, @c, @d), @x), @ac)) 
  SET @a = dbo.MD5_RotateLeft(@a, @s) 
  SET @a = dbo.MD5_AddUnsigned(@a, @b) 
  RETURN(@a) 
END 
GO
IF EXISTS(SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[MD5_ConvertToWordArray]') AND xtype IN(N'FN', N'IF', N'TF')) 
  DROP FUNCTION [dbo].[MD5_ConvertToWordArray] 
GO 
/***************************************************************************** 
* Name: MD5_ConvertToWordArray 
* Description: MD5_ConvertToWordArray 
*****************************************************************************/ 
CREATE FUNCTION dbo.MD5_ConvertToWordArray( 
   @sOrigMess    VARCHAR(8000)  = '' 
) 
RETURNS @tWordArray TABLE([ID] INT IDENTITY(0,1),[Word] INT) 
WITH ENCRYPTION 
AS 
BEGIN 
  IF @sOrigMess IS NULL 
    SET @sOrigMess = '' 

  DECLARE @iLenOfMess  INT 
  DECLARE @iWordArrayLen    INT 
  DECLARE @iPosOfWord  INT 
  DECLARE @iPosOfMess  INT 
  DECLARE @iCountOfWord    INT 

  SET @iLenOfMess = LEN(@sOrigMess) 
  SET @iWordArrayLen = ((@iLenOfMess + 8)/64 + 1) * 16 
  SET @iCountOfWord = 0 
  WHILE(@iCountOfWord<@iWordArrayLen) 
  BEGIN 
    INSERT INTO @tWordArray([Word]) VALUES(0) 
    SET @iCountOfWord = @iCountOfWord + 1 
  END 

  SELECT @iPosOfMess = 0, @iPosOfWord = 0, @iCountOfWord = 0 
  WHILE(@iPosOfMess < @iLenOfMess) 
  BEGIN 
    SELECT @iCountOfWord = @iPosOfMess / 4, @iPosOfWord = @iPosOfMess % 4 
    UPDATE @tWordArray 
  SET [Word] = [Word] | dbo.MD5_LShift(UNICODE(SUBSTRING(@sOrigMess,@iPosOfMess+1,1)),@iPosOfWord*8) 
  WHERE [ID] = @iCountOfWord 
    SET @iPosOfMess = @iPosOfMess + 1 
  END 
   
  SELECT @iCountOfWord = @iPosOfMess / 4, @iPosOfWord = @iPosOfMess % 4 
  UPDATE @tWordArray 
    SET [Word] = [Word] | dbo.MD5_LShift(0x80,@iPosOfWord*8) 
    WHERE [ID] = @iCountOfWord 

  UPDATE @tWordArray 
    SET [Word] = [Word] | dbo.MD5_LShift(@iLenOfMess,3) 
    WHERE [ID] = @iWordArrayLen - 2 
  UPDATE @tWordArray 
    SET [Word] = [Word] | dbo.MD5_RShift(@iLenOfMess,29) 
    WHERE [ID] = @iWordArrayLen - 1 
  RETURN 
END 
GO 

IF EXISTS(SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[MD5_WordToHex]') AND xtype IN(N'FN', N'IF', N'TF')) 
  DROP FUNCTION [dbo].[MD5_WordToHex] 
GO 
/***************************************************************************** 
* Name: MD5_WordToHex 
* Description: MD5_WordToHex 
*****************************************************************************/ 
CREATE FUNCTION dbo.MD5_WordToHex( 
   @iValue    INT 
) 
RETURNS CHAR(8) 
WITH ENCRYPTION 
AS 
BEGIN 
  DECLARE @sRes  VARCHAR(8) 
  DECLARE @iTmp  INT 
  DECLARE @iCount TINYINT 

  SELECT @sRes = '', @iCount = 0 
  WHILE(@iCount<4) 
  BEGIN 
    SET @iTmp = dbo.MD5_RShift(@iValue,@iCount*8) & 0x000000FF 
    SET @sRes = @sRes + CASE @iTmp / 16 WHEN 0   THEN '0' 
          WHEN 1   THEN '1' 
          WHEN 2   THEN '2' 
          WHEN 3   THEN '3' 
          WHEN 4   THEN '4' 
          WHEN 5   THEN '5' 
          WHEN 6   THEN '6' 
          WHEN 7   THEN '7' 
          WHEN 8   THEN '8' 
          WHEN 9   THEN '9' 
          WHEN 10 THEN 'A' 
          WHEN 11 THEN 'B' 
          WHEN 12 THEN 'C' 
          WHEN 13 THEN 'D' 
          WHEN 14 THEN 'E' 
          WHEN 15 THEN 'F' 
          ELSE '' END 
       + CASE @iTmp % 16 WHEN 0 THEN '0' 
          WHEN 1   THEN '1' 
          WHEN 2   THEN '2' 
          WHEN 3   THEN '3' 
          WHEN 4   THEN '4' 
          WHEN 5   THEN '5' 
          WHEN 6   THEN '6' 
          WHEN 7   THEN '7' 
          WHEN 8   THEN '8' 
          WHEN 9   THEN '9' 
          WHEN 10 THEN 'A' 
          WHEN 11 THEN 'B' 
          WHEN 12 THEN 'C' 
          WHEN 13 THEN 'D' 
          WHEN 14 THEN 'E' 
          WHEN 15 THEN 'F' 
          ELSE '' END 
    SET @iCount = @iCount + 1 
  END 
  RETURN(@sRes) 
END 
GO 

IF EXISTS(SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[MD5]') AND xtype IN(N'FN', N'IF', N'TF')) 
  DROP FUNCTION [dbo].[MD5] 
GO 
/***************************************************************************** 
* Name: MD5 
* Description: MD5 
*****************************************************************************/ 
CREATE FUNCTION dbo.MD5( 
   @sOrigMess  NVARCHAR(4000) 
) 
RETURNS CHAR(32) 
WITH ENCRYPTION 
AS 
BEGIN 
  --==================================== 
  DECLARE @S11 TINYINT 
  DECLARE @S12 TINYINT 
  DECLARE @S13 TINYINT 
  DECLARE @S14 TINYINT 
  DECLARE @S21 TINYINT 
  DECLARE @S22 TINYINT 
  DECLARE @S23 TINYINT 
  DECLARE @S24 TINYINT 
  DECLARE @S31 TINYINT 
  DECLARE @S32 TINYINT 
  DECLARE @S33 TINYINT 
  DECLARE @S34 TINYINT 
  DECLARE @S41 TINYINT 
  DECLARE @S42 TINYINT 
  DECLARE @S43 TINYINT 
  DECLARE @S44 TINYINT 

  SELECT @S11 = 7, @S12 = 12, @S13 = 17, @S14 = 22 
  SELECT @S21 = 5, @S22 = 9, @S23 = 14, @S24 = 20 
  SELECT @S31 = 4, @S32 = 11, @S33 = 16, @S34 = 23 
  SELECT @S41 = 6, @S42 = 10, @S43 = 15, @S44 = 21 
  --==================================== 
  DECLARE @a INT 
  DECLARE @b INT 
  DECLARE @c INT 
  DECLARE @d INT 
  DECLARE @AA  INT 
  DECLARE @BB  INT 
  DECLARE @CC  INT 
  DECLARE @DD  INT 

  SELECT    @a = 0x67452301 
  ,@b = 0xEFCDAB89 
  ,@c = 0x98BADCFE 
  ,@d = 0x10325476 
  --==================================== 
  DECLARE @sRes  VARCHAR(32) 
  SET @sRes = '' 
  DECLARE @iWordArrayLen    INT 
  DECLARE @iWordArrayCount  INT 

  DECLARE @tTmp TABLE([ID] INT, [Word] INT) 
  INSERT INTO @tTmp SELECT * FROM dbo.MD5_ConvertToWordArray(@sOrigMess) 
  SELECT @iWordArrayCount=0, @iWordArrayLen = COUNT(*) FROM @tTmp 

  WHILE(@iWordArrayCount < @iWordArrayLen) 
  BEGIN 
    SELECT @AA = @a, @BB = @b, @CC = @c, @DD = @d 

    SELECT @a = dbo.MD5_FF(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 0), @S11, 0xD76AA478) 
    SELECT @d = dbo.MD5_FF(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 1), @S12, 0xE8C7B756) 
    SELECT @c = dbo.MD5_FF(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 2), @S13, 0x242070DB) 
    SELECT @b = dbo.MD5_FF(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 3), @S14, 0xC1BDCEEE) 
    SELECT @a = dbo.MD5_FF(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 4), @S11, 0xF57C0FAF) 
    SELECT @d = dbo.MD5_FF(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 5), @S12, 0x4787C62A) 
    SELECT @c = dbo.MD5_FF(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 6), @S13, 0xA8304613) 
    SELECT @b = dbo.MD5_FF(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 7), @S14, 0xFD469501) 
    SELECT @a = dbo.MD5_FF(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 8), @S11, 0x698098D8) 
    SELECT @d = dbo.MD5_FF(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 9), @S12, 0x8B44F7AF) 
    SELECT @c = dbo.MD5_FF(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 10), @S13, 0xFFFF5BB1) 
    SELECT @b = dbo.MD5_FF(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 11), @S14, 0x895CD7BE) 
    SELECT @a = dbo.MD5_FF(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 12), @S11, 0x6B901122) 
    SELECT @d = dbo.MD5_FF(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 13), @S12, 0xFD987193) 
    SELECT @c = dbo.MD5_FF(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 14), @S13, 0xA679438E) 
    SELECT @b = dbo.MD5_FF(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 15), @S14, 0x49B40821) 

    SELECT @a = dbo.MD5_GG(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 1), @S21, 0xF61E2562) 
    SELECT @d = dbo.MD5_GG(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 6), @S22, 0xC040B340) 
    SELECT @c = dbo.MD5_GG(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 11), @S23, 0x265E5A51) 
    SELECT @b = dbo.MD5_GG(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 0), @S24, 0xE9B6C7AA) 
    SELECT @a = dbo.MD5_GG(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 5), @S21, 0xD62F105D) 
    SELECT @d = dbo.MD5_GG(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 10), @S22, 0x2441453) 
    SELECT @c = dbo.MD5_GG(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 15), @S23, 0xD8A1E681) 
    SELECT @b = dbo.MD5_GG(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 4), @S24, 0xE7D3FBC8) 
    SELECT @a = dbo.MD5_GG(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 9), @S21, 0x21E1CDE6) 
    SELECT @d = dbo.MD5_GG(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 14), @S22, 0xC33707D6) 
    SELECT @c = dbo.MD5_GG(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 3), @S23, 0xF4D50D87) 
    SELECT @b = dbo.MD5_GG(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 8), @S24, 0x455A14ED) 
    SELECT @a = dbo.MD5_GG(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 13), @S21, 0xA9E3E905) 
    SELECT @d = dbo.MD5_GG(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 2), @S22, 0xFCEFA3F8) 
    SELECT @c = dbo.MD5_GG(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 7), @S23, 0x676F02D9) 
    SELECT @b = dbo.MD5_GG(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 12), @S24, 0x8D2A4C8A) 

    SELECT @a = dbo.MD5_HH(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 5), @S31, 0xFFFA3942) 
    SELECT @d = dbo.MD5_HH(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 8), @S32, 0x8771F681) 
    SELECT @c = dbo.MD5_HH(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 11), @S33, 0x6D9D6122) 
    SELECT @b = dbo.MD5_HH(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 14), @S34, 0xFDE5380C) 
    SELECT @a = dbo.MD5_HH(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 1), @S31, 0xA4BEEA44) 
    SELECT @d = dbo.MD5_HH(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 4), @S32, 0x4BDECFA9) 
    SELECT @c = dbo.MD5_HH(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 7), @S33, 0xF6BB4B60) 
    SELECT @b = dbo.MD5_HH(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 10), @S34, 0xBEBFBC70) 
    SELECT @a = dbo.MD5_HH(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 13), @S31, 0x289B7EC6) 
    SELECT @d = dbo.MD5_HH(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 0), @S32, 0xEAA127FA) 
    SELECT @c = dbo.MD5_HH(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 3), @S33, 0xD4EF3085) 
    SELECT @b = dbo.MD5_HH(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 6), @S34, 0x4881D05) 
    SELECT @a = dbo.MD5_HH(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 9), @S31, 0xD9D4D039) 
    SELECT @d = dbo.MD5_HH(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 12), @S32, 0xE6DB99E5) 
    SELECT @c = dbo.MD5_HH(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 15), @S33, 0x1FA27CF8) 
    SELECT @b = dbo.MD5_HH(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 2), @S34, 0xC4AC5665) 

    SELECT @a = dbo.MD5_II(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 0), @S41, 0xF4292244) 
    SELECT @d = dbo.MD5_II(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 7), @S42, 0x432AFF97) 
    SELECT @c = dbo.MD5_II(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 14), @S43, 0xAB9423A7) 
    SELECT @b = dbo.MD5_II(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 5), @S44, 0xFC93A039) 
    SELECT @a = dbo.MD5_II(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 12), @S41, 0x655B59C3) 
    SELECT @d = dbo.MD5_II(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 3), @S42, 0x8F0CCC92) 
    SELECT @c = dbo.MD5_II(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 10), @S43, 0xFFEFF47D) 
    SELECT @b = dbo.MD5_II(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 1), @S44, 0x85845DD1) 
    SELECT @a = dbo.MD5_II(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 8), @S41, 0x6FA87E4F) 
    SELECT @d = dbo.MD5_II(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 15), @S42, 0xFE2CE6E0) 
    SELECT @c = dbo.MD5_II(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 6), @S43, 0xA3014314) 
    SELECT @b = dbo.MD5_II(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 13), @S44, 0x4E0811A1) 
    SELECT @a = dbo.MD5_II(@a, @b, @c, @d, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 4), @S41, 0xF7537E82) 
    SELECT @d = dbo.MD5_II(@d, @a, @b, @c, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 11), @S42, 0xBD3AF235) 
    SELECT @c = dbo.MD5_II(@c, @d, @a, @b, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 2), @S43, 0x2AD7D2BB) 
    SELECT @b = dbo.MD5_II(@b, @c, @d, @a, (SELECT [Word] FROM @tTmp WHERE [ID] = @iWordArrayCount + 9), @S44, 0xEB86D391) 

    SET @a = dbo.MD5_AddUnsigned(@a, @AA) 
    SET @b = dbo.MD5_AddUnsigned(@b, @BB) 
    SET @c = dbo.MD5_AddUnsigned(@c, @CC) 
    SET @d = dbo.MD5_AddUnsigned(@d, @DD) 

    SET @iWordArrayCount = @iWordArrayCount + 16 
  END 

  SET @sRes = dbo.MD5_WordToHex(@a) + dbo.MD5_WordToHex(@b) + dbo.MD5_WordToHex(@c) + dbo.MD5_WordToHex(@d) 
  SET @sRes = LOWER(@sRes) 
  RETURN(@sRes) 
END 
GO 

--Test 
set nocount on 
select dbo.MD5('') as 'MD5('''')' 
union 
select 'd41d8cd98f00b204e9800998ecf8427e' 

select dbo.MD5('a') as 'MD5(''a'')' 
union 
select '0cc175b9c0f1b6a831c399e269772661' 

select dbo.MD5('abc') as 'MD5(''abc'')' 
union 
select '900150983cd24fb0d6963f7d28e17f72' 

select dbo.MD5('message digest') as 'MD5(''message digest'')' 
union 
select 'f96b697d7cb7938d525a2f31aaf161d0' 

select dbo.MD5('abcdefghijklmnopqrstuvwxyz') as 'MD5(''abcdefghijklmnopqrstuvwxyz'')' 
union 
select 'c3fcd3d76192e4007dfb496cca67e13b' 

select dbo.MD5('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789') as 'MD5(''ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'')' 
union 
select 'd174ab98d277d9f5a5611c2c9f419d9f' 

select dbo.MD5('12345678901234567890123456789012345678901234567890123456789012345678901234567890') as 'MD5(''12345678901234567890123456789012345678901234567890123456789012345678901234567890'')' 
union 
select '57edf4a22be3c955ac49da2e2107b67a' 

select dbo.MD5('1234') as 'MD5(''1234'')' 
union 
select 'a31d0f25367ebe046897f8a939ca4a9f'

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -