婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > asp.net計算一串數字中每個數字出現的次數

asp.net計算一串數字中每個數字出現的次數

熱門標簽:山西防封卡電銷卡套餐 浙江外呼系統怎么安裝 銅川小型外呼系統運營商 海外地圖標注門市標 廈門商鋪地圖標注 地圖標注多個行程 云南外呼電銷機器人系統 陜西人工外呼系統哪家好 上海楊浦怎么申請申請400電話
接下來拆分這一串字符串,每個字符插入一個表變量中,最后使用GROUP BY進行分組。
復制代碼 代碼如下:

CalNumOfChtInStr
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Insus.NET
-- Create date: 2012-02-23
-- Description: Calculate the number of characters in the string
-- =============================================
CREATE PROCEDURE [dbo].[CalNumOfChtInStr]
(
@Value NVARCHAR(MAX)
)
AS
BEGIN
DECLARE @dum TABLE ([Str] NVARCHAR(2))
DECLARE @I INT = LEN(@Value),@J INT = LEN(@Value)
WHILE @I > 0
BEGIN
--以下函數可參考:http://www.cnblogs.com/insus/archive/2011/06/25/2090231.html
IF [dbo].[IsInteger] (SUBSTRING(@Value, @I, 1)) = 0
BEGIN
RAISERROR('傳入字符串包含其它字符,不完全是數字。',16,1)
RETURN
END
SET @I = @I - 1
END
WHILE @J > 0
BEGIN
INSERT INTO @dum VALUES(SUBSTRING(@Value, @J, 1))
SET @J = @J - 1
END
SELECT [Str],COUNT([Str]) AS [Num] FROM @dum GROUP BY [Str]
END

Demo:
復制代碼 代碼如下:

EXECUTE [dbo].[CalNumOfChtInStr] '5487554127489423454'

結果:


以下文字更新于2012-02-24 09:40
分析以上的存儲過程,考慮到性能問題,它在判斷是否包含有其它字符時,循環一次字符串,然后又循環一次將每一個字符插入表變量中。以下修改正此點只做循環一次。

復制代碼 代碼如下:

CalNumOfChtInStr
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Insus.NET
-- Create date: 2012-02-23
-- Update date: 2012-02-24
-- Description: Calculate the number of characters in the string
-- =============================================

ALTER PROCEDURE [dbo].[CalNumOfChtInStr]
(
@Value NVARCHAR(MAX)
)
AS
BEGIN
DECLARE @dum TABLE ([Str] NVARCHAR(2))
DECLARE @I INT = LEN(@Value)
WHILE @I > 0
BEGIN
INSERT INTO @dum VALUES(SUBSTRING(@Value, @I, 1))
SET @I = @I - 1
END

--以下函數可參考:http://www.cnblogs.com/insus/archive/2011/06/25/2090231.html
IF EXISTS(SELECT TOP 1 1 FROM @dum WHERE [dbo].[IsInteger]([Str]) = 0)
BEGIN
RAISERROR('傳入字符串包含其它字符,不完全是數字。',16,1)
RETURN
END
SELECT [Str],COUNT([Str]) AS [Num] FROM @dum GROUP BY [Str]
END

以下內容于2012-04-29 10:44分添加:

如果想參考C#版本 https://www.jb51.net/article/30211.htm

標簽:孝感 常州 信陽 許昌 萊蕪 西雙版納 自貢 朔州

巨人網絡通訊聲明:本文標題《asp.net計算一串數字中每個數字出現的次數》,本文關鍵詞  asp.net,計算,一串,數字,中,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《asp.net計算一串數字中每個數字出現的次數》相關的同類信息!
  • 本頁收集關于asp.net計算一串數字中每個數字出現的次數的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 五指山市| 佛教| 合川市| 海阳市| 新化县| 平利县| 潜江市| 九江县| 饶阳县| 张家口市| 桦甸市| 呼和浩特市| 溆浦县| 沧州市| 乐业县| 蛟河市| 萍乡市| 梨树县| 邛崃市| 武山县| 修武县| 通州市| 南召县| 织金县| 石河子市| 池州市| 濮阳县| 张北县| 新闻| 桃园县| 苍溪县| 大田县| 澜沧| 平远县| 平罗县| 榆树市| 梅河口市| 厦门市| 延津县| 宁远县| 菏泽市|