天天看點

sql 函數 漢字轉拼音

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

<code>GO</code>

<code>/****** Object: UserDefinedFunction [dbo].[fn_GetPy] Script </code><code>Date</code><code>: 2017/1/4 10:53:49 ******/</code>

<code>SET</code> <code>ANSI_NULLS </code><code>ON</code>

<code>SET</code> <code>QUOTED_IDENTIFIER </code><code>ON</code>

<code>ALTER</code> <code>function</code> <code>[dbo].[fn_GetPy](@str nvarchar(4000))</code>

<code>returns</code> <code>nvarchar(4000)</code>

<code> </code><code>--用于加密</code>

<code>--WITH ENCRYPTION</code>

<code>as</code>

<code>begin</code>

<code>declare</code> <code>@intLen </code><code>int</code>

<code>declare</code> <code>@strRet nvarchar(4000)</code>

<code>declare</code> <code>@</code><code>temp</code> <code>nvarchar(100)</code>

<code>set</code> <code>@intLen = len(@str)</code>

<code>set</code> <code>@strRet = </code><code>''</code>

<code>while @intLen &gt; 0</code>

<code>set</code> <code>@</code><code>temp</code> <code>= </code><code>''</code>

<code>select</code> <code>@</code><code>temp</code> <code>= </code><code>case</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'帀'</code> <code>then</code> <code>'Z'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'丫'</code> <code>then</code> <code>'Y'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'夕'</code> <code>then</code> <code>'X'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'屲'</code> <code>then</code> <code>'W'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'他'</code> <code>then</code> <code>'T'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'仨'</code> <code>then</code> <code>'S'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'呥'</code> <code>then</code> <code>'R'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'七'</code> <code>then</code> <code>'Q'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'妑'</code> <code>then</code> <code>'P'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'噢'</code> <code>then</code> <code>'O'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'拏'</code> <code>then</code> <code>'N'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'嘸'</code> <code>then</code> <code>'M'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'垃'</code> <code>then</code> <code>'L'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'咔'</code> <code>then</code> <code>'K'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'丌'</code> <code>then</code> <code>'J'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'铪'</code> <code>then</code> <code>'H'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'旮'</code> <code>then</code> <code>'G'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'發'</code> <code>then</code> <code>'F'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'妸'</code> <code>then</code> <code>'E'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'咑'</code> <code>then</code> <code>'D'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'嚓'</code> <code>then</code> <code>'C'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'八'</code> <code>then</code> <code>'B'</code>

<code>when</code> <code>substring</code><code>(@str,@intLen,1) &gt;= </code><code>'吖'</code> <code>then</code> <code>'A'</code>

<code>else</code> <code>rtrim(ltrim(</code><code>substring</code><code>(@str,@intLen,1)))</code>

<code>end</code>

<code>--對于漢字特殊字元,不生成拼音碼</code>

<code>if (ascii(@</code><code>temp</code><code>)&gt;127) </code><code>set</code> <code>@</code><code>temp</code> <code>= </code><code>''</code>

<code>--對于英文中小括号,不生成拼音碼</code>

<code>if @</code><code>temp</code> <code>= </code><code>'('</code> <code>or</code> <code>@</code><code>temp</code> <code>= </code><code>')'</code> <code>set</code> <code>@</code><code>temp</code> <code>= </code><code>''</code>

<code>select</code> <code>@strRet = @</code><code>temp</code> <code>+ @strRet</code>

<code>set</code> <code>@intLen = @intLen - 1</code>

<code>return</code> <code>lower</code><code>(@strRet)</code>

  效果如下:

sql 函數 漢字轉拼音

本文轉自左正部落格園部落格,原文連結:http://www.cnblogs.com/soundcode/p/6247781.html,如需轉載請自行聯系原作者