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

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

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.87849 の関連記事表示

<< 0 >>
■87849  SQLServerの文字列を変換する方法
□投稿者/ 夜叉丸 -(2018/07/05(Thu) 15:16:02)

    分類:[.NET 全般] 

    文字列の両端に指定した文字があれば削除したいのですが
    どうすればよいのでしょうか?

    'ABC'→'ABC'
    '-ABC'→'ABC'
    '-ABC-'→'ABC'
    'ABC-'→'ABC'

    力づくでやってみると以下のようになるのですが
    もっと Replace や LTrim や RTrim などを使って
    スマートにできる方法はありますか?

    SELECT ABC
    FROM (
     SELECT CASE WHEN SUBSTRING(ABC, LEN(ABC), 1) = '-' THEN SUBSTRING(ABC, 1, LEN(ABC) - 1) ELSE ABC END AS ABC
     FROM (
      SELECT CASE WHEN SUBSTRING(ABC, 1, 1) = '-' THEN SUBSTRING(ABC, 2, LEN(ABC) - 1) ELSE ABC END AS ABC
      FROM (
       SELECT 'ABC' AS ABC
       UNION SELECT '-ABC' AS ABC
       UNION SELECT 'ABC-' AS ABC
       UNION SELECT '-ABC-' AS ABC
      ) AS ABC1
     ) ABC2
    ) ABC3
親記事 /過去ログ151より / 関連記事表示
削除チェック/

■87850  Re[1]: SQLServerの文字列を変換する方法
□投稿者/ PANG2 -(2018/07/05(Thu) 15:34:30)
    No87849 (夜叉丸 さん) に返信
    > 文字列の両端に指定した文字があれば削除したいのですが
    > どうすればよいのでしょうか?

    ストアドファンクションを用意する。
記事No.87849 のレス /過去ログ151より / 関連記事表示
削除チェック/

■87851  Re[1]: SQLServerの文字列を変換する方法
□投稿者/ shu -(2018/07/06(Fri) 08:03:43)
    No87849 (夜叉丸 さん) に返信
    
    スカラ値関数を用意する。
    
    例)
    CREATE FUNCTION TrimSample
    (
    	@src nvarchar(500)
    )
    RETURNS nvarchar(500)
    AS
    BEGIN
        DECLARE @ret nvarchar(500)
    
        set @ret = @src;
        if SUBSTRING(@ret,1,1) = '-' set @ret = SUBSTRING(@ret, 2, LEN(@ret) - 1);
    
        if SUBSTRING(@ret,len(@ret),1) = '-' set @ret = SUBSTRING(@ret, 1, LEN(@ret) - 1);
    
        RETURN @ret
    
    END
    
    
    Select方法例)
    select dbo.TrimSample('-ABC')
    
    select dbo.TrimSample('-ABC-')
    
    select dbo.TrimSample('ABC-')
    
    select dbo.TrimSample('ABC')
記事No.87849 のレス /過去ログ151より / 関連記事表示
削除チェック/

■87855  Re[2]: SQLServerの文字列を変換する方法
□投稿者/ 氏 -(2018/07/06(Fri) 19:22:21)
記事No.87849 のレス /過去ログ151より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -