1

Oracle 11gのuser_tab_partitionで次のSQL選択クエリを実行します

{ user_tab_partitions where table_name='TAB1' から high_value を選択します。}

次の結果が得られます..

TO_DATE(' 2013-02-03 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') TO_DATE(' 2013-02-10 00:00:00', ' SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') TO_DATE(' 2013-02-17 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN' ') TO_DATE(' 2013-02-24 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') TO_DATE(' 2013-03-03 00:00:00' , 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') TO_DATE(' 2013-03-10 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR =グレゴリアン')

質問:置換または同様の関数を使用して、各行から「NLS_CALENDAR=GREGORIAN」を削除する方法。

4

1 に答える 1

0

これを試して:

select regexp_replace(high_value, ',\s*''NLS_CALENDAR=GREGORIAN''', '')
from user_tab_partitions 
where table_name='TAB1';

単一引用符は、正規表現パターンであっても、Oracle SQL で 2 回入力することでエスケープされます。

于 2013-03-26T00:15:29.590 に答える