佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > SQL server中字符串逗號(hào)分隔函數(shù)分享

SQL server中字符串逗號(hào)分隔函數(shù)分享

熱門(mén)標(biāo)簽:呼叫中心市場(chǎng)需求 鐵路電話系統(tǒng) Linux服務(wù)器 百度競(jìng)價(jià)排名 網(wǎng)站排名優(yōu)化 服務(wù)外包 AI電銷 地方門(mén)戶網(wǎng)站

繼SQl -Function創(chuàng)建函數(shù)數(shù)據(jù)庫(kù)輸出的結(jié)果用逗號(hào)隔開(kāi),在開(kāi)發(fā)中也有許多以參數(shù)的形式傳入帶逗號(hào)字條串參數(shù)(數(shù)據(jù)大時(shí)不建議這樣做)

例:查找姓名為“張三,李二” 的數(shù)據(jù)此時(shí)在數(shù)據(jù)庫(kù)里就要對(duì)此參數(shù)做處理如圖:

函數(shù)代碼如下

CREATE FUNCTION [dbo].[fnSplitStr] (
 @sText  NVARCHAR(Max),
 @sDelim  CHAR(1)
)

RETURNS @retArray TABLE (
 value VARCHAR(100)
)
AS
BEGIN
 DECLARE 
  @posStart  BIGINT,
  @posNext  BIGINT,
  @valLen   BIGINT,
  @sValue   NVARCHAR(100);

 IF @sDelim IS NULL 
 BEGIN
  IF LEN(@sText)>100 SET @sText = SUBSTRING(@sText, 1, 100)
  
  INSERT @retArray (value)
  VALUES (@sText);
 END
 ELSE
 BEGIN
  SET @posStart = 1;

  WHILE @posStart = LEN(@sText)
  BEGIN
   SET @posNext = CHARINDEX(@sDelim, @sText, @posStart);

   IF @posNext = 0 
    SET @valLen = LEN(@sText) - @posStart + 1;
   ELSE
    SET @valLen = @posNext - @posStart;

   SET @sValue = SUBSTRING(@sText, @posStart, @valLen);
   SET @posStart = @posStart + @valLen + 1;

   IF LEN(@sValue) > 0
   BEGIN
    IF LEN(@sValue)>100 SET @sValue = SUBSTRING(@sValue, 1, 100)
    
    INSERT @retArray (value)
    VALUES (@sValue);
   END
  END
 END
 RETURN
END

好了,關(guān)于sql字符串逗號(hào)分隔函數(shù)就介紹到這,大家可以參考一下。

您可能感興趣的文章:
  • Sqlserver 自定義函數(shù) Function使用介紹
  • SQL Server實(shí)現(xiàn)split函數(shù)分割字符串功能及用法示例
  • sql server如何利用開(kāi)窗函數(shù)over()進(jìn)行分組統(tǒng)計(jì)
  • Sql Server中REPLACE函數(shù)的使用
  • SQL Server 常用函數(shù)使用方法小結(jié)

標(biāo)簽:湖南 蘭州 銅川 崇左 黃山 衡水 湘潭 仙桃

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL server中字符串逗號(hào)分隔函數(shù)分享》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    杭州市| 通海县| 甘孜| 吉木乃县| 双柏县| 浦北县| 响水县| 绥滨县| 北碚区| 缙云县| 扬州市| 阳新县| 万山特区| 繁峙县| 左权县| 钟祥市| 自治县| 凉城县| 西乌珠穆沁旗| 三亚市| 沅陵县| 稻城县| 万宁市| 岳阳市| 电白县| 项城市| 陵川县| 米易县| 吴川市| 滨海县| 灵武市| 庆元县| 江孜县| 定安县| 福清市| 眉山市| 新沂市| 资中县| 宁蒗| 大理市| 缙云县|