日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SQLServerUDF填充字符串的正確運(yùn)用方案

以下的文章主要描述的是正確運(yùn)用SQL Server UDF填充字符串的實(shí)際操作步驟,這個問題看似很簡單,即在創(chuàng)建一個用戶定義的實(shí)際操作函數(shù),這個函數(shù)允許填充理想字符是有限數(shù)量的一個字符串。

一旦我決定填充的位置能夠定制以便滿足最終用戶的要求時,這個實(shí)驗(yàn)就變成一個涉及更多問題的函數(shù)從而變得不能滿足需要了。

 

雖然Transact-SQL (T/SQL)沒有提供一個類似于其他關(guān)系數(shù)據(jù)庫所提供的LPAD和RPAD的可比函數(shù),但是SQL Server專業(yè)版提供了REPLICATE()函數(shù),它可以用來建立一個簡單的用戶定義函數(shù)從而填充一個字符串。在講解定制填充函數(shù)的代碼之前,讓我們來看看這個REPLICATE()函數(shù)以及它能夠提供什么吧。

 

REPLICATE (string_expression ,integer_expression)允許你復(fù)制一個字符串(string_expression參數(shù)是指每個integer_expression參數(shù)連續(xù)的次數(shù))。

下面是這個函數(shù)的一個簡單實(shí)例:

 
 
 
  1. SELECT REPLICATE('ABCDE|', 3)   
  2. ABCDE|ABCDE|ABCDE|  
  3. (1 row(s) affected) 

盡管REPLICATE()函數(shù)允許你返回一個最高可達(dá)8000字節(jié)的字符串,我將要創(chuàng)建的這個函數(shù)將基于varchar(100)的一個輸出結(jié)果值。你可以修改這個值來滿足你的要求,盡管如此,我很少需要填充一個大于20個字符的字符串值。

我認(rèn)為創(chuàng)建一個函數(shù)用于一個未SQL Server UDF填充字符串的左邊或右邊是值得的。接下來,問題就變得很有趣,那就是如果由于某些原因你需要在字符串中間填充怎么辦?在該字符串的左邊和右邊都平均填充怎么樣呢?無論你是否使用這些選項(xiàng),這個功能都會提供給你。下面的代碼就是我創(chuàng)建的函數(shù)。

 

 
 
 
  1. CREATE FUNCTION [dbo].[usp_pad_string]   
  2. (  
  3. @string_unpadded VARCHAR(100),  
  4. @pad_char VARCHAR(1),  
  5. @pad_count tinyint,  
  6. @pad_pattern INT)  
  7. RETURNS VARCHAR(100)  
  8. AS  
  9. BEGIN  
  10. DECLARE @string_padded VARCHAR(100)  
  11. SELECT @string_padded =  
  12. CASE @pad_pattern  
  13. WHEN 0 THEN REPLICATE(@pad_char, @pad_count) + @string_unpadded --pad left  
  14. WHEN 1 THEN @string_unpadded + REPLICATE(@pad_char, @pad_count) --pad right  
  15. WHEN 2 THEN  
  16. --pad center  
  17. LEFT(@string_unpadded, FLOOR(LEN(@string_unpadded)/2))  
  18. + REPLICATE(@pad_char, @pad_count)  
  19. + RIGHT(@string_unpadded, LEN(@string_unpadded) - FLOOR(LEN(@string_unpadded)/2))  
  20. WHEN 3 THEN  
  21. --pad edges  
  22. REPLICATE(@pad_char, FLOOR(@pad_count/2))  
  23. + @string_unpadded  
  24. + REPLICATE(@pad_char, @pad_count - FLOOR(@pad_count/2))  
  25. END  
  26. RETURN @string_padded  
  27. END  

以上的相關(guān)內(nèi)容就是對運(yùn)用SQL Server UDF填充字符串的介紹,望你能有所收獲。

【編輯推薦】

  1. 安裝SQL Server 2005數(shù)據(jù)庫的性能監(jiān)視器計(jì)數(shù)器
  2. SQL Server視圖運(yùn)行的提高與索引
  3. SQL Server性能進(jìn)行提高的4項(xiàng)技術(shù)概述
  4. SQL Server數(shù)據(jù)轉(zhuǎn)換服務(wù)的妙招之一
  5. SQL Server數(shù)據(jù)庫的妙招用法

 


文章名稱:SQLServerUDF填充字符串的正確運(yùn)用方案
鏈接URL:http://www.dlmjj.cn/article/cooscpc.html