C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■97148 / 1階層)  SQLServerからのデータ取得方法について
□投稿者/ 魔界の仮面弁士 (3044回)-(2021/04/07(Wed) 11:03:28)
2021/04/07(Wed) 12:27:45 編集(投稿者)

※ NULL を渡された時は、空文字ではなく NULL を返すように変更しました

No97147 (紅雀 さん) に返信
> 文字列は3文字ずつの数字の連続になっています。
> そこから、不要な文字列を削除(003,004を除く)して
> 取得することはできますか?

-- SUBSTRING で 3 文字ずつ切り出して、不要な文字列以外を繋ぎなおす
CREATE FUNCTION dbo.Wankuma97148(@text nvarchar(100))
 RETURNS nvarchar(100)
AS
BEGIN
 DECLARE @len int = LEN(@text)
 DECLARE @pos int = 1
 DECLARE @chunk nvarchar(3) = NULL
 DECLARE @result nvarchar(100) = CASE WHEN @text IS NOT NULL THEN '' END
 WHILE @pos < @len
 BEGIN
  SET @chunk = SUBSTRING(@text, @pos, 3)
  IF @chunk NOT IN (N'003', '004') SET @result = CONCAT(@result, @chunk)
  SET @pos = @pos + 3
 END
 RETURN @result
END
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←SQLServerからのデータ取得方法について /紅雀 →Re[2]: SQLServerからのデータ取得方法について /紅雀
 
上記関連ツリー

SQLServerからのデータ取得方法について / 紅雀 (21/04/07(Wed) 10:36) #97147
SQLServerからのデータ取得方法について / 魔界の仮面弁士 (21/04/07(Wed) 11:03) #97148 ←Now
  └ Re[2]: SQLServerからのデータ取得方法について / 紅雀 (21/04/08(Thu) 09:10) #97159
    └ Re[3]: SQLServerからのデータ取得方法について / 魔界の仮面弁士 (21/04/08(Thu) 09:50) #97160
      └ Re[4]: SQLServerからのデータ取得方法について / 魔界の仮面弁士 (21/04/08(Thu) 10:19) #97162
        ├ Re[5]: SQLServerからのデータ取得方法について / 紅雀 (21/04/08(Thu) 11:07) #97163 解決済み
        └ Re[5]: SQLServerからのデータ取得方法について / 魔界の仮面弁士 (21/04/08(Thu) 13:31) #97167 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信