char(4)
を2つ比較しなければなりません。したがって、私は他のフォーマットと比較できるように一つのフォーマットにしたいと思います。基本的には、プレフィックスのついたゼロと後続のスペースがあればそれを削除する必要があります。接頭辞付きの指定されたすべてのcharとpostfixのスペースを削除する
文字:例えば
'001 '
と'1'
両方が
'010 '
と'10'
をフォーマットした後'1A'
を比較する必要があり、両方が
'001A'
と'1A'
をフォーマットした後'1'
と比較すべきであるべき両方がと比較されます
'010A'
と'10A'
をフォーマットした後、両方の両方が
select Replace(Ltrim(Replace(Rtrim(@charToBeFormatted), '0', ' ')), ' ', '0')
は思わフォーマット後'100A'
に比較する必要があり
'100A'
をフォーマットした後'100'
に比較する必要があり
'100 '
と'100'
をフォーマットした後、'10A'
に比較する必要があります仕事をするが、再浪費している文字列を2回配置してみると、実際に意図を明確にすることはできません。
より効率的かつ/またはエレガントな方法で結果を達成できますか?
@Benoit [LTRIM](http://msdn.microsoft.com/en-us/library/ms177827.aspx)と[RTRIM ](http://msdn.microsoft.com/en-us/library/ms178660.aspx)は、2番目のパラメータを使用しません。 –
@JoeStefanelliええ、あなたが何を意味するか分からない。この例のLTRIMとRTRIMの両方には、1つのパラメータしかありません。あなたは精緻化できますか? (可読性/明確な意図がないという問題の根底にあるのかもしれない) – steenhulthin
私は@Benoitによって投稿されたcommmentに応答していました。 –