SQL中文转拼音调优策略...

 

 

CREATE FUNCTION [FN_GETPY] (@STR NVARCHAR(MAX)) RETURNS NVARCHAR(MAX) AS BEGIN DECLARE @STR_LEN INT, @RESULT NVARCHAR(MAX), @CRS NVARCHAR(1) SET @STR_LEN=LEN(@STR) SET @RESULT= ' ' WHILE @STR_LEN> 0 BEGIN SET @CRS = SUBSTRING(@STR,@STR_LEN,1) SELECT @STR_LEN = @STR_LEN - 1,@RESULT= CASE WHEN @CRS>='帀' THEN 'Z' WHEN @CRS>='丫' THEN 'Y' WHEN @CRS>='夕' THEN 'X' WHEN @CRS>='屲' THEN 'W' WHEN @CRS>='他' THEN 'T' WHEN @CRS>='仨' THEN 'S' WHEN @CRS>='呥' THEN 'R' WHEN @CRS>='七' THEN 'Q' WHEN @CRS>='妑' THEN 'P' WHEN @CRS>='噢' THEN 'O' WHEN @CRS>='拏' THEN 'N' WHEN @CRS>='嘸' THEN 'M' WHEN @CRS>='垃' THEN 'L' WHEN @CRS>='咔' THEN 'K' WHEN @CRS>='丌' THEN 'J' WHEN @CRS>='铪' THEN 'H' WHEN @CRS>='旮' THEN 'G' WHEN @CRS>='发' THEN 'F' WHEN @CRS>='妸' THEN 'E' WHEN @CRS>='咑' THEN 'D' WHEN @CRS>='嚓' THEN 'C' WHEN @CRS>='八' THEN 'B' WHEN @CRS>='吖' THEN 'A' ELSE @CRS END+@RESULT END RETURN(@RESULT) END GO

 

 

执行示例:

 

SELECT DBO.[FN_GETPY]('游标、临时表、触发器、COLLATE等等... 无可厚非、这些都是好东西 我为什么今天要花时间来写这些东西呢? 是因为我发现慢慢的很多人用久了这些东西之后会形成一种习惯,不管解决什么问题动不动都会把它们搬出来 由此我看到了很多漂亮的代码在性能效率面前却显得不那么优秀')

 

你可能感兴趣的:(SQL中文转拼音调优策略...)