成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數據庫:分享四個實用的SQL Server腳本函數,歡迎收藏

數據庫 SQL Server
今天給大家分享四個在實際開發中,比較實用的SQLServer腳本函數,希望對大家能有所幫助!

 今天給大家分享四個在實際開發中,比較實用的SQL Server腳本函數,希望對大家能有所幫助!

[[374709]]

1、字符串指定字符分割為list 

  1. -- 字符串指定字符分割為list 
  2. CREATE FUNCTION [dbo].[splitl] ( 
  3.     @String VARCHAR(MAX), 
  4.     @Delimiter VARCHAR(MAX
  5. RETURNS @temptable TABLE (items VARCHAR(MAX)) AS 
  6. BEGIN 
  7.     DECLARE @idx INT=1 
  8.     DECLARE @slice VARCHAR(MAX)  
  9.     IF LEN(@String) < 1 OR LEN(ISNULL(@String,'')) = 0 
  10.         RETURN 
  11.     WHILE @idx != 0 
  12.     BEGIN 
  13.         SET @idx = CHARINDEX(@Delimiter,@String) 
  14.         IF @idx != 0 
  15.             SET @slice = LEFT(@String,@idx - 1) 
  16.         ELSE 
  17.             SET @slice = @String 
  18.         IF LEN(@slice) > 0 
  19.             INSERT INTO @temptable(items) VALUES(@slice) 
  20.         SET @String = RIGHT (@String, LEN(@String) - @idx) 
  21.         IF LEN(@String) = 0 
  22.             BREAK 
  23.     END 
  24.     RETURN 
  25. END 
  26. GO 
  27. -- 調用方式  
  28. SELECT * FROM dbo.splitl('aaa|bbb|ccc','|'

2、數字去掉末尾的0 

  1. -- 數字去掉末尾的0 
  2. CREATE function [dbo].[ClearZero](@inValue varchar(50)) 
  3. returns varchar(50) 
  4. as 
  5. begin 
  6. declare @returnValue varchar(20) 
  7. if(@inValue=''
  8.    set @returnValue='' --空的時候為空 
  9. else if (charindex('.',@inValue) ='0'
  10.    set @returnValue=@inValue --針對不含小數點的 
  11. else if ( substring(reverse(@inValue),patindex('%[^0]%',reverse(@inValue)),1)='.'
  12.           set @returnValue = 
  13.             left(@inValue,len(@inValue)-patindex('%[^0]%',reverse(@inValue)))  
  14.             --針對小數點后全是0的 
  15.       else 
  16.           set @returnValue =left(@inValue,len(@inValue)-  
  17.                                  patindex('%[^0]%.%',reverse(@inValue))+1) --其他任何情形 
  18. return @returnValue 
  19. end 
  20. --調用示例 
  21. SELECT dbo.ClearZero(258.250300) 

3、創建表、視圖、函數、存儲過程判斷是否存在 

  1. /*判斷函數/方法是否存在,若存在則刪除函數/方法*/ 
  2. IF EXISTS (SELECT * FROM dbo.sysobjects WHERE name = 'Func_Name')  
  3. DROP FUNCTION Func_Name; 
  4. GO 
  5. --創建函數/方法 
  6. CREATE FUNCTION Func_Name 
  7.     @a INT 
  8. RETURN INT 
  9. AS 
  10. BEGIN 
  11. --coding 
  12. END 
  13. GO 
  14. /*判斷存儲過程是否存在,若存在則刪除存儲過程*/ 
  15. IF EXISTS (OBJECT_NAME('Proc_Name','P'IS NOT NULL DROP PROC Proc_Name; 
  16. GO 
  17. --創建存儲過程 
  18. CREATE PROC Proc_Name 
  19. AS SELECT * FROM Table_Name 
  20. GO 
  21. /*判斷數據表是否存在,若存在則刪除數據表*/ 
  22. IF EXISTS (SELECT * FROM dbo.sysobjects WHERE name = 'Table_Name')  
  23. DROP VIEW Table_Name; 
  24. GO 
  25. --創建數據表 
  26. CREATE TABLE Table_Name 
  27.     Id INT PRIMARY KEY NOT NULL 
  28. /*判斷視圖是否存在,若存在則刪除視圖*/ 
  29. IF EXISTS (SELECT * FROM sys.views WHERE name = 'View_Name')  
  30. DROP VIEW View_Name  
  31. GO 
  32. --創建視圖 
  33. CREATE VIEW View_Name AS 
  34.     SELECT SELECT * FROM table_name 
  35. GO 

4、金額轉換為大寫 

  1. /* 
  2.     說明:數字金額轉中文金額 
  3.     示例:187.4 轉成 壹佰捌拾柒圓肆角整 
  4. */ 
  5.  
  6. CREATE FUNCTION [dbo].[CNumeric](@num numeric(14,2)) 
  7.     returns nvarchar(100) 
  8. BEGIN 
  9.     Declare @n_data nvarchar(20),@c_data nvarchar(100),@n_str nvarchar(10),@i int 
  10.     Set @n_data=right(space(14)+cast(cast(abs(@num*100) as bigintas nvarchar(20)),14) 
  11.     Set @c_data='' 
  12.     Set @i=1 
  13.  
  14.     WHILE @i<=14 
  15.     Begin 
  16.         set @n_str=substring(@n_data,@i,1) 
  17.         if @n_str<>'' 
  18.         begin 
  19.         IF not ((SUBSTRING(@n_data,@i,2)= '00'or 
  20.         ((@n_str= '0'and ((@i=4) or (@i=8) or (@i=12) or (@i=14)))) 
  21.         SET @c_data=@c_data+SUBSTRING( N'零壹貳叁肆伍陸柒捌玖',CAST(@n_str AS int)+1,1) 
  22.         IF not ((@n_str= '0'and (@i <> 4) and (@i <> 8) and (@i <> 12)) 
  23.         SET @c_data=@c_data+SUBSTRING( N'仟佰拾億仟佰拾萬仟佰拾圓角分',@i,1) 
  24.         IF SUBSTRING(@c_data,LEN(@c_data)-1,2)= N'億萬' 
  25.         SET @c_data=SUBSTRING(@c_data,1,LEN(@c_data)-1) 
  26.         END 
  27.         SET @i=@i+1 
  28.     END 
  29.     IF @num <0 
  30.         SET @c_data= '(負數)'+@c_data 
  31.     IF @num=0 
  32.         SET @c_data= '零圓' 
  33.     IF @n_str= '0' 
  34.         SET @c_data=@c_data+ '整' 
  35.  
  36.     RETURN(@c_data) 
  37. END 

 

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2022-07-30 07:50:40

數據庫字段存儲

2011-04-01 10:26:28

SQL Server 數據庫鏡像

2020-12-18 09:10:36

數據庫SQL Server存儲空間

2019-08-12 08:47:14

腳本語言數據庫MySQL

2020-10-29 08:35:06

Pandas函數Python

2019-10-16 00:37:36

Oracle數據庫游標數

2024-02-23 18:17:57

Python腳本開發

2019-10-31 08:22:39

shell腳本Linux

2023-10-26 07:05:58

MySQL數據庫

2011-03-28 17:12:36

SQL Server數轉換服務

2019-07-17 07:07:54

MySQL數據庫索引

2009-03-03 11:41:14

數據庫表表分區

2020-12-11 07:00:42

MySQL數據庫備份腳本

2011-09-21 14:00:34

SQL Server

2021-10-26 22:43:05

數據庫安全存儲

2015-03-30 12:54:55

SQL ServerSQL Server

2021-08-26 15:27:29

數據庫服務器數據庫服務器

2010-07-01 11:49:13

SQL Server

2022-03-21 08:00:00

網絡安全影子IT數據泄露

2019-10-09 16:08:21

PythonPython教程Python 開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人av免费在线观看 | 中文字幕在线观看视频网站 | www.久久精品视频 | 国产成人99久久亚洲综合精品 | 日本精品免费在线观看 | 欧美成人精品二区三区99精品 | 亚洲 自拍 另类 欧美 丝袜 | 一级看片免费视频囗交动图 | 精品国产伦一区二区三区观看方式 | 色桃网| 亚洲一区二区三区在线免费 | 欧美精品一区二区三区在线 | 日本三级电影在线免费观看 | 一区二区三区国产视频 | 99久久精品一区二区成人 | 亚洲一区二区中文字幕 | 精品国产不卡一区二区三区 | 国产精品视频一区二区三区不卡 | 亚洲毛片网站 | 亚洲第一福利视频 | www国产成人免费观看视频,深夜成人网 | 亚洲国产一区二区视频 | 91资源在线观看 | 国产视频在线观看一区二区三区 | 亚洲国产精品视频 | 九九综合 | 精品av久久久久电影 | 日韩欧美在线观看视频网站 | 黄色视频a级毛片 | 欧美一区二区三区在线播放 | 国产在线一区二区三区 | 欧美激情va永久在线播放 | 亚洲乱码一区二区三区在线观看 | 91麻豆精品国产91久久久久久久久 | 午夜成人免费视频 | 国产成人小视频 | 久久精品小视频 | 97色伦网| 国产精品乱码一二三区的特点 | 四虎永久在线精品免费一区二 | 一级做a爰片性色毛片视频停止 |