亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

表值函數與JS中split()的聯系

2024-07-21 02:46:49
字體:
來源:轉載
供稿:網友
表值函數與JS中split()的聯系

在公司用云平臺做開發就是麻煩 ,做了很多功能或者有些收獲,都沒辦法寫博客,結果回家了自己要把大腦里面記住的寫出來。

split()這個函數我們并不陌生,但是當前臺有許多字段然后隨意勾選后的這些參數傳遞到后臺做處理的時候卻麻煩了,我們這個時候需要把這些當字符串傳遞到存儲過程,在存儲過程里面將這些字符串分割成一個個單獨的個體,我這里不說數組,是因為存儲過程沒有數組這一說。

這時候我們就會想到表值函數。表值函數返回的是一個Table類型的表。說到這里我想很多人都想到了,這不就是一個數組形式么?一個表就是一個數組,每一行就是一個數組中的值,但是里面的值怎么遍歷或者取出來呢?我想我們可以用游標的形式去遍歷出來。

之前我做過一個gompertz的算法模型,將VBA寫的算法,全部用存儲過程寫出來,里面涉及到很多的一位數組,二維數組。我就是用一個個虛擬表寫的。

現在我們言歸正傳!

這里我們先不管內聯表值函數還是多語句表值函數

//語法結構,函數體由一條return語句組成,最后調用的時候跟查表一樣CREATE FUNCTION [ schema_name. ] function_name ( [ { @parameter_name [ AS ] [ type_schema_name. ] parameter_data_type     [ = default ] }     [ ,...n ]  ])RETURNS TABLE    [ WITH <function_option> [ ,...n ] ]    [ AS ]    RETURN [ ( ] select_stmt [ ) ][ ; ]

這樣比較抽象,現在來個具體的使用的函數。

CREATE FUNCTION Split(@Text NVARCHAR(4000),@Sign NVARCHAR(4000))  RETURNS  @tempTable TABLE(id INT IDENTITY(1,1) PRIMARY KEY,[VALUE] NVARCHAR(4000))  AS  BEGIN      DECLARE @StartIndex INT                --開始查找的位置      DECLARE @FindIndex  INT                --找到的位置      DECLARE @Content    VARCHAR(4000)      --找到的值      SET @StartIndex = 1                       SET @FindIndex=0            --開始循環查找字符串逗號      WHILE(@StartIndex <= LEN(@Text))      BEGIN          SELECT @FindIndex = CHARINDEX(@Sign,@Text,@StartIndex)          IF(@FindIndex =0 OR @FindIndex IS NULL)          BEGIN          --如果沒有找到者表示找完了              SET @FindIndex = LEN(@Text)+1          END           SET @Content = LTRIM(RTRIM(SUBSTRING(@Text,@StartIndex,@FindIndex-@StartIndex)))          --初始化下次查找的位置          SET @StartIndex = @FindIndex+1          --把找的的值插入到要返回的Table類型中          INSERT INTO @tempTable ([VALUE]) VALUES (@Content)       END      RETURN  END  -------------------------------------------------------------------SELECT * FROM dbo.Split('a,b,c,d,e,f,g',',')  

這里面涉及到了5個函數。

第一個:LEN() 這個沒得說的,就是類似JS中的length

第二個:LTRIM() 這個從字符串左側刪除空格或其他預定義字符

第三個:RTRIM()字符串的末端開始刪除空白字符或其他預定義字符

第四個: CHARINDEX(expression1 , expression2 , [ start_location ]) 返回值是 int 這個函數有點意思了,也很重要。

  • 第一個參數是要找的字符串 ;
  • 第二個參數是在哪里查找這個字符串 ;
  • 第三個參數是開始查找的位置 ;

這個函數類似于C#中的StartWith(),IndexWith()等函數。

  例子:CustomName包含客戶的First Name和Last Name,它們之間被一個空格隔開。我們用CHARINDX函數確定兩個名字中間空格的位置。通過這個方法,我們可以分析ContactName列的空格位置,這樣可以只顯示這個列的last name部分。

第五個:SUBSTRING(str, pos, len) 這個函數類似JS中的substring()是用來抓出一個欄位資料中的其中一部分/截取字符串的一個方法 。

  • 第一個參數是要截取的字符串 ;
  • 第二個參數是開始的位置;
  • 第三個參數是截取的長度

  例子:SELECT SUBSTR (Store_Name, 2, 4)FROM GeographyWHERE Store_Name = 'San Diego';


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚州精品天堂中文字幕| 久青草国产97香蕉在线视频| 亚洲一区二区三区乱码aⅴ蜜桃女| 久久人91精品久久久久久不卡| 一区二区三区国产视频| 欧美重口另类videos人妖| 亚洲va久久久噜噜噜久久天堂| 欧美日韩国产激情| 国产精品第一页在线| 欧美综合第一页| 在线日韩第一页| 亚洲已满18点击进入在线看片| 日韩专区在线播放| 6080yy精品一区二区三区| 91久久国产精品91久久性色| 亚洲国产成人在线播放| 欧美日韩精品国产| 欧美成人午夜激情在线| 国产精品欧美亚洲777777| 日韩一区视频在线| 最新国产精品亚洲| 亚洲日本欧美日韩高观看| 国产精品激情av电影在线观看| 欧美日韩中文在线| 久久精品国产一区二区三区| 久久全国免费视频| 色偷偷av亚洲男人的天堂| 日韩欧美成人精品| 亚洲午夜久久久久久久| 国产精品劲爆视频| 亚洲国产精品嫩草影院久久| 欧美乱人伦中文字幕在线| 久久久久久久999| 98精品国产高清在线xxxx天堂| 疯狂做受xxxx高潮欧美日本| 5566成人精品视频免费| 久久免费视频这里只有精品| 高清一区二区三区四区五区| 久久久影视精品| 亚洲欧美国产精品va在线观看| 欧美日本中文字幕| 久久久av亚洲男天堂| 国产精品免费一区豆花| 一本一本久久a久久精品牛牛影视| 亚洲一区二区国产| 欧美大肥婆大肥bbbbb| 久久精品国产精品| 亚洲国语精品自产拍在线观看| 精品福利视频导航| 夜夜狂射影院欧美极品| 91探花福利精品国产自产在线| 久久久久久久色| 国产日韩精品在线观看| 国产在线视频一区| 国产精品久久久久秋霞鲁丝| 国产精彩精品视频| 久久久久国色av免费观看性色| 91中文字幕一区| 狠狠久久五月精品中文字幕| 日韩av有码在线| www国产91| 久久久国产影院| 亚洲最大的免费| 亚洲精品欧美日韩| 日本欧美一二三区| 8x海外华人永久免费日韩内陆视频| 国产日韩欧美成人| 黑人巨大精品欧美一区免费视频| 91久久久久久久久久| 欧美日韩精品在线播放| 51久久精品夜色国产麻豆| 国产日本欧美视频| 九九热这里只有精品免费看| 亚洲精品福利免费在线观看| 色av中文字幕一区| 国产精品久久久久久久av大片| 日韩精品极品毛片系列视频| 亚洲国产婷婷香蕉久久久久久| 日韩视频免费在线观看| 日韩精品中文在线观看| 在线中文字幕日韩| 欧洲精品在线视频| 亚洲色图综合久久| 久久伊人精品一区二区三区| 在线播放国产一区中文字幕剧情欧美| 久久精品国产欧美激情| 欧美成人在线免费| 国产成人一区二| 欧美日韩视频免费播放| 91亚洲国产成人久久精品网站| 久久国产精品偷| 久久久国产一区二区三区| 精品国产精品三级精品av网址| 91国偷自产一区二区三区的观看方式| 国产噜噜噜噜久久久久久久久| 浅井舞香一区二区| 亚洲第一精品夜夜躁人人爽| 国产在线精品成人一区二区三区| 亚洲免费av片| 国产精品成人免费视频| 国产精品久久久久久久久借妻| 国产欧美精品在线播放| 精品久久中文字幕| 亚洲第一中文字幕| 久久久久中文字幕| 久久久视频精品| 国产精品三级美女白浆呻吟| 欧美极品少妇全裸体| 亚洲国产精品视频在线观看| 久久免费成人精品视频| 亚洲三级 欧美三级| 日韩欧美一区二区三区| 久久精品国产v日韩v亚洲| 久久久久99精品久久久久| 日韩精品在线私人| 欧美成人午夜激情在线| 亚洲激情在线视频| 亚洲春色另类小说| 国精产品一区一区三区有限在线| 日韩免费在线免费观看| 久久综合九色九九| 欧美视频在线视频| 日韩电影大全免费观看2023年上| 亚洲欧美激情在线视频| 亚洲国产成人在线视频| 国产精品视频99| 欧美在线观看网址综合| 日韩精品极品在线观看| 欧美性猛交丰臀xxxxx网站| 8x拔播拔播x8国产精品| 亚洲日本欧美日韩高观看| 97久久久免费福利网址| 国产在线精品成人一区二区三区| 福利视频导航一区| 欧美高清理论片| 久久亚洲精品小早川怜子66| 国产在线播放91| 欧美在线视频免费播放| 91系列在线观看| 欧美国产极速在线| 91久久精品视频| 国产伦精品免费视频| 亚洲电影免费观看高清完整版在线| 亚洲欧美一区二区三区久久| 色爱av美腿丝袜综合粉嫩av| 91色视频在线观看| 亚洲国产精品99久久| 亚洲激情 国产| 91国产精品电影| 久久久久久网站| 亚洲欧洲在线免费| 亚洲国产精品一区二区三区| 欧洲成人在线观看| 欧美极品少妇与黑人| 亚洲欧美日韩成人| 欧美激情在线狂野欧美精品| 亚洲一区二区精品| 久久久久久国产三级电影| 黑人狂躁日本妞一区二区三区| 日本国产欧美一区二区三区| 欧美一区二区三区免费视| 国产精品成人一区二区三区吃奶| 色先锋资源久久综合5566| 国产精品视频免费观看www|