Cum de a aduce șir după "=" într-un multi-linie, coloana valoarea cu ajutorul oracle sql?

0

Problema

Am un tabel cu o coloană având mai multe linii valoare și fiecare linie este un fel de pereche valoare-cheie (separate prin semn = și, probabil, se termină cu noi pauze de linie)

Exemplu de valoare într-o celulă din coloană:

Lista de valori-cheie pereche
key00=value00 <\n> key01=value01 <\n> key02=value02

Caut un SQL (Oracle) interogare pentru a găsi cheie specifice (spune Key01) și afișa în următorul format

CHEIE VALOAREA
Key01 Value01

Vă rugăm să ajute.

oracle sql
2021-11-24 05:28:58
1

Cel mai bun răspuns

0

Aici este o opțiune

Date eșantion:

SQL> select * from test;

        ID COL
---------- --------------------------------------------------
         1 key00=value00
           key01=value01
           key02=value02

Subinterogare se întoarce subșirul care începe cu "cheie" valoarea (transmis ca parametru), în timp ce interogare exterior desparte acest subșir într - cheie și valoarea ei înșiși:

SQL> select regexp_substr(str, '^\w+') key,
  2         regexp_substr(str, '\w+$') value
  3  from (select regexp_substr(col, '&par_key=\w+') str
  4        from test
  5       );
Enter value for par_key: key01

KEY             VALUE
--------------- ---------------
key01           value01

SQL>
2021-11-24 07:13:22

În alte limbi

Această pagină este în alte limbi

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................