![]() |
Sortieren und manipulieren von Datenbank-Einträgen
Hallo DP'ler!
Heute wende ich mich gleich an Euch, da ich noch nicht weiß, wie ich das Problem am besten löse. Ich habe folgende Daten in der Datenbank: PETCT 18-FDG-PET vom 03.08.2009 - PETCT Onko-PET (18F-FDG) vom 03.08.2009 PETCT Onko-PET (18F-FDG) vom 03.08.2009 PETCT Onko-PET (18F-FDG) vom 04.08.2009 PETCT Onko-PET (18F-FDG) vom 06.08.2009 PETCT Onko-PET (68Ga-DOTATATE) vom 03.08.2009 PETCT Onko-PET (68Ga-DOTATATE) vom 06.08.2009 PETCT PET/CT (18F-FDG) vom 03.08.2009 mit CT - Thorax PETCT PET/CT (18F-FDG) vom 04.08.2009 mit CT - Abdomen PETCT PET/CT (18F-FDG) vom 10.08.2009 mit CT - Thorax PETCT PET/CT (68Ga-DOTATATE) vom 10.08.2009 mit CT - Abdomen Das Ergebnis soll eine Liste mit den Anzahl Untersuchungen sein, allerdings ohne Datum. PETCT 18-FDG-PET 1 PETCT Onko-PET (18F-FDG) 4 PETCT Onko-PET (68Ga-DOTATATE) 2 PETCT PET/CT (18F-FDG) mit CT - Thorax 2 PETCT PET/CT (18F-FDG) mit CT - Abdomen 1 PETCT PET/CT (68Ga-DOTATATE) mit CT - Abdomen 1 Nun würde mich interessieren, wie Ihr das Problem lösen würdet. Soll ich die Daten "zurechtschneiden" und in eine temporäre Datenbank speichern oder gibt es eine Delphi-Komponente, die mir einen Teil der Arbeit abnimmt. Vielen Dank im Voraus Mit freundlichen Grüßen Ines Delphi2009, Win XP, Oracle RDB-Datenbank |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Es wäre interessant zu wissen, wie die Datenstruktur aussieht. Vermutlich lässt sich das mit einer relativ simplen Abfrage erschlagen. Welche Delphi-Zugriffskomponenten Du verwendest, hängt weitestgehend vom Budget und dem Anspruch ab.
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
Wenn die Daten tatsächlich so in dieser Form in einer Columne vorliegen, wird dir wohl nichts anderes übrig bleiben, als die Daten "von Hand zu zerlegen".
Ansonsten mal das Datenmodell vorstellen. |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Zitat:
1. Feld: Organ (PETCT oder Herz oder SD oder....) 2. Feld: Überschrift 3. Feld: Zusatz (z.B. mit CT - Thorax) Zugriffskomponenten: ich arbeite im öffentlichen Dienst - hoher Anspruch aber low bugdet! Viele Grüße Ines |
Re: Sortieren und manipulieren von Datenbank-Einträgen
SQL-Code:
select
name || ' ' || organ || ' ' || zusatz, count(*) from tabelle group by name || ' ' || organ || ' ' || zusatz |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Sind die Daten schon in einer SQL-Datenbank?
@"f00shizzle": Vor fast zweieinhalb Jahren angemeldet, und das eben war der erste Beitrag!? :spin2: :cheer: :spin2: |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Sorry, meine Anfrage hat einen Fehler: :gruebel:
die Spalten werden nicht richtig dargestellt. Ich weiß auch nicht, wie ich es richtig machen kann. Es handelt sich um 3 Felder. Die select-Anweisung hilft mir nicht weiter, da ich den mittleren Teil quasi "bearbeiten" muß. (Das Datum muß raus).
Delphi-Quellcode:
Feld1 Feld2 Zusatz Anzahl
PETCT 18-FDG-PET 1 PETCT Onko-PET (18F-FDG) 4 PETCT Onko-PET (68Ga-DOTATATE) 2 PETCT PET/CT (18F-FDG) mit CT - Thorax 2 PETCT PET/CT (18F-FDG) mit CT - Abdomen 1 PETCT PET/CT (68Ga-DOTATATE) mit CT - Abdomen 1 Die Daten sind in einer Oracle-RDB-Datenbank (SQL-Datenbank). Grüße Ines |
Re: Sortieren und manipulieren von Datenbank-Einträgen
das war ein alterego eines damaligen rausgeekelten accounts von mir :D ich musste einfach mal was sagen. nachdem dreimal geantwortet wurde ohne zu antworten, obwohl es offensichtlich ist/war :)
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
Zitat:
mit dem || operator kannst du die spalten miteinander verknüpfen, wie du sicherlich weißt. |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Wenn ich das richtig verstehe, sind diese Daten
Zitat:
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
Manchmal kann man sich dann doch nur wundern, wie schnell die Dinge hier "verstanden" werden...
Zitat:
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
Das Datum steht immer dabei? Dann könnte man es doch einfach vom entsprechenden Feld abschneiden, oder? Glücklicherweise hat es führende Nullen, so dass jedes Datum gleichlang ist.
SQL-Code:
select ...substring(Feld,1,Length(Feld)-14)...
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
So schauen die Originaldaten aus:
Delphi-Quellcode:
Ich habe das Datum gelöscht, um zu zeigen, was ich als Ergebnis möchte.
PETCT PET/CT (18F-FDG) vom 03.08.2009 mit CT - Thorax
PETCT PET/CT (18F-FDG) vom 04.08.2009 mit CT - Abdomen PETCT PET/CT (18F-FDG) vom 10.08.2009 mit CT - Thorax PETCT PET/CT (68Ga-DOTATATE) vom 10.08.2009 mit CT - Abdomen Da das Datum an unterschiedlicher Position kommt, muß ich jeden Satz einzeln bearbeiten. Es gibt auch Datensätze ohne Datum - um mir die ganze Sache zu erleichtern!!!! :stupid: Aber wie es dann weitergeht: darüber grüble ich noch. (Datenbank - um dann mit Select count das Ergebnis zu bekommen oder irgendeine geeignete Delphi-Komponente). Viele Grüße Ines |
Re: Sortieren und manipulieren von Datenbank-Einträgen
dann wollen wir mal eine finale lösung vorstellen:
SQL-Code:
wenn man davon ausgeht das in feld2 immer ein datum enthalten ist :)
select
beschreibung || ' ' || Anzahl from ( select Feld1 || ' ' || substr(Feld2, 1, instr(feld2, 'vom')-1) || ' ' || Zusatz beschreibung, count(*) anzahl from tabelle group by Feld1 || ' ' || substr(Feld2, 1, instr(feld2, 'vom')-1) || ' ' || Zusatz ) |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Zitat:
Zitat:
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
wie wäre es denn mit einem union select :)
1x selektiere ich mir alle, in denen ein datum vorkommt, substr/instr die und 1x selektiere ich die ohne datum (rtrim wird man da sicher auch vermeiden können) dritte möglichkeit, man bedient sich der vielfältigen möglichkeiten von regularexpression funktionen, die oracle ebenso bietet dann reicht ein einfaches replace(feld2, regex(...), '') ... :/ |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Das Datum ist mit im "Zusatz"-Textfeld gespeichert? Wer macht denn sowas? Das macht eben die Definition von "wo ein Datum drin vorkommt" u.U. sehr kompliziert.
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
[OT]
Zitat:
Gruß K-H [/OT] |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Zitat:
Ich habe Datensätze ohne Datum - da ich in einer früheren Programmversion einfach das Untersuchungsdatum an die Überschrift drangehängt habe. Aber damit ist der Ausdruck nicht 100% gleich mit den Datenbank-Einträgen. Wenn Kaffeefleck auf dem Ausdruck - dann auch bitte auf der Datenbank!!! :evil: Wir haben eine Oracle-RDB-Datenbank. Ich habe mich entschlossen, eine temporäre Relation auf meiner Datenbank zu erstellen und dann die Sätze bearbeitet dorthin zu schreiben. Anschließend kann ich mit select count... die Abfrage durchführen und das Ergebnis in eine Excel-Tabelle schreiben. Viele Grüße Ines |
Re: Sortieren und manipulieren von Datenbank-Einträgen
Zitat:
|
Re: Sortieren und manipulieren von Datenbank-Einträgen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz