Ceci est demandé au sujet d'une base de données Oracle 11g.Puis-je activer plusieurs valeurs stockées dans un seul champ dans un ensemble de lignes à partir d'une instruction select?
Je suis en train d'interroger une table de calendrier Atlassian Confluence. Il stocke les entrées de calendrier pour un calendrier entier dans une seule valeur dans une seule ligne, qui est ce glob gigantesque de merde iCal. Si les champs dans chaque entrée étaient dans un ordre cohérent, mon regex fu serait assez fort pour analyser l'entrée particulière que je recherche ... mais comme j'ai besoin de chercher une date, la description, et le résumé, qui peut apparemment être dans n'importe quel ordre dans le BEGIN/END VEVENT, c'est impossible. Je suis à moitié certain que ce serait impossible même avec lookahead et lookbehind.
Y at-il une construction sql (non pl-sql) qui hachez cette valeur chaîne/blob singulariser en plusieurs lignes, de sorte que je pouvais faire quelque chose comme:
select * from (chopped up value) where x like '%something%';
Cela rendrait sorte de l'inverse d'un wm_concat() ou group_concat ...
une entrée typique ressemble à quelque chose comme ça (et il a 50 ou 60 déjà):
BEGIN:VEVENT
UID:[email protected]
SUMMARY:Richard Smichard
ATTENDEE;X-CONFLUENCE-USER=rismich:https://atlassianzzz.zzz.edu/c
onfluence/display/~rismich
LOCATION:
DESCRIPTION:Primary
DTSTART;VALUE=DATE:20130726
DTEND;VALUE=DATE:20130729
DTSTAMP:20130724T153322Z
CREATED:20130724T153322Z
LAST-MODIFIED:20130724T153322Z
ORGANIZER;X-CONFLUENCE-USER=botard:MAILTO:[email protected]
SEQUENCE:0
END:VEVENT
Je ne peux pas utiliser PL-SQL ou construire un accessoire er parser car l'environnement dans lequel il fonctionnera ne rend pas cela possible. Je peux lancer une instruction select, et soit elle renvoie la valeur que je cherche, soit elle ne l'est pas.
En outre, NoSQL suce. Temps fort.
Est-ce que votre soutien dbms CTEs? –
Oracle 11g ... Je dois modifier que –
Utiliser 'regexp_substr. (Chaîne, || '(*) &.' '# X0D;', 1, n, '', 1)' pour obtenir la ligne #n à l'intérieur de 'string'. –