dizeyi SQL Netezza'dan ayıklayın
Oct 07 2020
lütfen Seri # numarasını Logmsg'den çıkarabilecek bir sorguya ihtiyacım var, zor olan belirli bir kalıbı takip etmemesi, sabit sınırlayıcı olmaması ve seri uzunluğunun her zaman aynı olmamasıdır.
|LogMsg |
|------------------------------------------------------------------------------------------|
|Customer Receive CPE Indoor. serial 21530369847SKA011094, user:ahmed.o.haraz |
|Customer Receive CPE Indoor as change. serial :21530369847SK9078291, user:Abdullah.M160275|
|Customer Receive CPE Indoor as change. serial :T5D7S18802909825, user:ahmed.o.haraz |
|Customer Receive CPE Indoor as change. serial :T5D7S18802909830, user:ahmed.o.haraz |
|Customer Receive CPE Indoor. serial ZTERRTHJ9303771, user:Mohamed.E176246 |
|Customer Returned CPE. serial :21530369847SKA011094, user:ahmed.o.haraz |
sonuç aşağıdaki gibi olacaktır:
|Serial |
|--------------------|
|21530369847SKA011094|
|21530369847SK9078291|
|T5D7S18802909825 |
|T5D7S18802909830 |
|ZTERRTHJ9303771 |
|21530369847SKA011094|
Yanıtlar
1 GordonLinoff Oct 07 2020 at 17:59
Yöntemlerden biri regexp_replace(), ancak aşağıdakiler için farklı formatlarınız var serial. Yani:
select replace(replace(regexp_extract(logmsg, 'serial [^,]+'), 'serial ', ''), ':', '')
1 AniketKulkarni Oct 08 2020 at 09:37
Bu yanıtlanır https://stackoverflow.com/a/64254966/14311638
Doğru normal ifade kalıbıyla birlikte regexp_extract_all_spve get_value_varcharile birlikte kullanın
Nicole Kidman, Michael Keaton ve Val Kilmer'in Batman Olarak Paylaştığı Bu 1 Çekici Özelliğe Bayıldı
Donovan, Şarkılarından 1'ini The Beatles'ın "Lucy in the Sky with Diamonds" şarkısıyla karşılaştırdı
Kevin Jonas'ın Kızı Alena, Doğum Günü Fotoğrafında Büyümüş Görünüyor: '9 Yaşında Gerçek Hissetmiyor'
Tom Girardi Dolandırıcılık Suçlamalarından Yargılanma Yetkisinin Belirlenmesi İçin Duruşmaya Katıldı