0.50,0.40などの数字から末尾の「0」をトリミングする必要があります。 SQL ServerでTRIM
関数を使用できません。SQL Serverで後続の0をトリミングする方法
convert(decimal(10, 1), number)
は、「0.23」などの値に影響するため使用しません。
0.50,0.40などの数字から末尾の「0」をトリミングする必要があります。 SQL ServerでTRIM
関数を使用できません。SQL Serverで後続の0をトリミングする方法
convert(decimal(10, 1), number)
は、「0.23」などの値に影響するため使用しません。
ここには、任意の数値からすべての末尾のゼロを削除する一般的な方法があります。最初に、数字をテキストにキャストし、末尾に0がいくつあるかを、REVERSE()
,REPLACE()
、およびCHARINDEX()
を使用してカウントします。次に、LEFT()
を使用して、数値テキスト全体から何個の末尾のゼロを引いた数を引いたものを使用します。
SELECT LEFT(CAST(col AS VARCHAR),
LEN(CAST(col AS VARCHAR)) -
CHARINDEX(LEFT(REPLACE(REVERSE(CAST(col AS VARCHAR)), '0', ''), 1),
REVERSE(CAST(col AS VARCHAR))) +
CHARINDEX(LEFT(REPLACE(REVERSE(CAST(col AS VARCHAR)), '0', ''), 1),
REPLACE(REVERSE(CAST(col AS VARCHAR)), '0', ''))) AS new_col
FROM yourTable
ここにデモ:
Uは、このスクリプトを試すことができます。
select convert (DOUBLE PRECISION , column_name) from table_name
これは通常、プレゼンテーション層で取り扱われているものです。私はあなたの直接の質問をカバーする以下の答えを試みました。 –