مطابقة الأنماط في PostgreSQL؟[مغلق]
-
26-09-2020 - |
سؤال
لدي سلسلة تحتاج إلى استخراج التاريخ،
مثال:S01_XXX001_000_min_01_20150526ت123440583.قوس S01_XXX001_000_20150526ت123440583_min_01.arc
بناءً على النمط مثل "رقمي T رقمي',
أحاول الاستخراج باستخدام SQL أدناه، هل يمكن لأي أحد أن يساعدني.
SQL:
select substring('S01_ZAR001_000_min_01_20150526T123440583.arc','^\d')
select substring('SAPCC_XX_ZZZ_BitClass_XXX_20150623T45656566456_XXX_XX_XXXXXX.arc' like '_%T%_',1,8)
select substring('SAPCC_XX_ZZZ_BitClass_XXX_201506235T335656_XXX_XX_XXXXXX.arc','[^_]+([^0-9]{1,8})$')
SELECT SUBSTRING('XY1234Z', 'Y*([0-9]{1,3})');
المحلول
select substr(
substring('SAPCC_XX_ZZZ_Bit1T1Class_XXX_201506235T335656_XXX_XX_XXXXXX'
from
'_[0-9]+T[0-9]+_'
), 2, 8
)::date
لا تنتمي إلى dba.stackexchange