文字列から特定の部分を取得する必要があります。SQLの文字列から特定の部分を取得する方法
フィールドのPOSITION
には、A-
ブロック、M-0000000359
ブロック、最後に/
の右側のブロックが含まれています。
私が今必要としているのは、/
の右側の数字です。,
の場合は、カンマまでの数字だけです。
POSITION
の次の出力がA-M-0000000359/10
またはA-M-0000000359/10,10
になる場合は、両方の場合で今必要な結果は10
です。
SQL
SELECT POSITION
,SUBSTRING((REPLACE(POSITION, SUBSTRING((POSITION), 1, CHARINDEX('/', (POSITION), 1)), '')), 1, CHARINDEX('/', (POSITION), 0)) AS TRIM_A
,SUBSTRING((REPLACE(POSITION, SUBSTRING((POSITION), 1, CHARINDEX('/', (POSITION), 1)), '')), 0, CHARINDEX(',', ((REPLACE(POSITION, SUBSTRING((POSITION), 1, CHARINDEX('/', (POSITION), 1)), ''))), 1)) AS TRIM_B
,*
FROM ORDER
出力
POSITION |TRIM_A|TRIM_B
---------------------|------|------|
A-M-0000000359/1 |1
---------------------|------|------|
A-M-0000000359/1,10 |1,10 1
例あなたが固定されたポジションで望むものを示してください。これは一般的に真実ですか? –
例(SQLと出力)は、私が現時点で固まっている場所です。あなたの質問に答えた場合、あなたが見る出力が働きます。 – oldsport
あなたの現在のコードの仕事のあなたの質問は何ですか? – scsimon