PostgreSQL で SQL を使用して、位置を指定せずに文字列内の部分文字列を取得する必要があります。
私はこの方法で試しましたが、最後の数字「2」のみを表示しています
このように私は働きました 文字列は P1.B1.12 です
SELECT SUBSTRING(REGISTRATIONNO from '.(.)*') AS REGISTRATIONNO
FROM SUBSCRIBER;
期待される結果は12
- 2 番目以降のすべて.
PostgreSQL で SQL を使用して、位置を指定せずに文字列内の部分文字列を取得する必要があります。
私はこの方法で試しましたが、最後の数字「2」のみを表示しています
このように私は働きました 文字列は P1.B1.12 です
SELECT SUBSTRING(REGISTRATIONNO from '.(.)*') AS REGISTRATIONNO
FROM SUBSCRIBER;
期待される結果は12
- 2 番目以降のすべて.
select (regexp_split_to_array(registrationno, '\.'))[3]
from subscriber
これは、目的の値が常に3 番目の位置にあることを前提としていることに注意してください。そうでない場合、式は間違った値を返します。
SQLFiddle の例を次に示します: http://sqlfiddle.com/#!12/d41d8/1924
多分あなたはこれを試すことができます:
SELECT SUBSTRING_INDEX(REGISTRATIONNO, '.', -1) AS REGISTRATIONNO
FROM SUBSCRIBER;