Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung Datenbanken

GELÖST

Select Anweisung mit dynamischer Spalte bestehend aus Max-Wert

Mitglied: MirkoW

MirkoW (Level 1) - Jetzt verbinden

25.10.2007, aktualisiert 31.10.2007, 4790 Aufrufe, 10 Kommentare

Hi Ihrs,

ich suche nach einer Lösung, wie ich im SQL eine Max-Spalte hinzufügen kann.

in einer Tabelle gehören jeweils 2 bis 3 Datensätze zusammen.

ein Beispiel :

ID SUB_ID VALUE NUMBER
1 1 1234 0
2 1 5678 1
3 1 4321 2
4 2 8765 0
5 2 1234 1
6 3 4321 0
7 3 8754 1
8 3 1234 2


und ich möchte jeweils den höhsten Number-Wert mit an den Datensatz hängen. also ne virtuelle Spalte mit der Bezeichnung MaxNumber

und das soll dann so aussehen :

ID SUB_ID VALUE NUMBER MaxNumber
1 1 1234 0 2
2 1 5678 1 2
3 1 4321 2 2
4 2 8765 0 1
5 2 1234 1 1
6 3 4321 0 2
7 3 8754 1 2
8 3 1234 2 2

in Access bekomme ich es einwandfrei hin, indem ich eine Abfrage erstelle, in der alle Feldern aufgelistet werden und in der 2. Abfrage der Max-Wert ausgerechnet wird und die SUB-ID als beziehung verwendet.
Mitglied: MCClane
25.10.2007 um 14:28 Uhr
Also

ich schreib das jetzt mal so vorsich hin:
table ist deine Tabelle aber schon mit einer leeren MaxNumber Spalte (int) hoffe das geht für dich.

So jetzt das UPDATE

UPDATE table SET MaxNumber = MAX(NUMBER) WHERE sub_id = '1';

UPDATE table SET MaxNumber = MAX(NUMBER) WHERE sub_id = '2';

UPDATE table SET MaxNumber = MAX(NUMBER) WHERE sub_id = '3';

Hoffe das geht so habe es nicht getestet.
Gruss MCClane
Bitte warten ..
Mitglied: MirkoW
25.10.2007 um 14:49 Uhr
Hi,

naja also ich wollte eigentlich keine Updateprozedur ausführen sodern lediglich nur einen sql select query ausführen. des weiteren sind die Daten dynamisch. also es gibt mehr als nur eine Sub-ID
Bitte warten ..
Mitglied: bastel
25.10.2007 um 16:13 Uhr
Select MAX(LINIE) FROM TABELLE GROUP BY ZEILE;

ungefaehr so koennte das aussehen, koenntest noch ein Synonym einfügen etc...
Bitte warten ..
Mitglied: Biber
25.10.2007 um 16:52 Uhr
Moin MirkoW,

bitte schreib noch mal kurz, um was für eine DB es geht.

Eher lassen sich keine speziellen Statements zusammenschreddern.

Funktionieren mit den meisten DBMSen müsste:
01.
Select Id, Subid, value, number, maxnumber 
02.
From IDSubId,  
03.
(select subid as subid2 , 
04.
max(number) as maxnumber 
05.
   FROM IDSubid  group by subid) 
06.
where  Subid=SubId2;
[die Tabelle heißt bei mir IDSubId, die Feldnamen wie bei Dir.]

Grüße
Biber
Bitte warten ..
Mitglied: MirkoW
25.10.2007 um 18:19 Uhr
hi,

wie funktioniert dies unter einer DB2 Datenbank ? da Subid=subid2 leider nicht funktioniert
Bitte warten ..
Mitglied: Biber
25.10.2007 um 19:31 Uhr
Moin MirkoW,

genau das meinte ich vorhin mit "mal das Datenbanksystem nennen". Danke.
01.
Select Id, Subid, value, number, d.maxnumber 
02.
From db2Tabelle,  
03.
(select subid as subid2 , 
04.
max(number) as maxnumber 
05.
   FROM db2tabelle  group by subid) d 
06.
where  Subid=d.SubId2;
Unter DB2 braucht die 2. "Tabelle" , also das, was nach dem ersten "From Db2Tabelle " in Klammern steht, einen so genannten CORRELATION NAME.

Den habe ich jetzt dazu gepackt (der Buchstabe "d" oben.) Das reicht.

Oben habe ich (mehr aus Gewohnheit denn aus Notwendigkeit) alle Felder aus dieser "Tabelle d" auch mit einem entsprechenden Präfix versehen.

Genauso fliegt aber:
01.
SELECT Id, Subid, value, number, maxnumber 
02.
FROM db2Tabelle,  
03.
(SELECT subid              AS subid2 , 
04.
              max(number) AS maxnumber 
05.
   FROM db2tabelle     GROUP BY subid) d 
06.
   WHERE  Subid=SubId2;
Grüße
Biber
Bitte warten ..
Mitglied: MirkoW
25.10.2007 um 19:37 Uhr
vielen Dank. werds morgen mal ausprobieren.
Bitte warten ..
Mitglied: Biber
31.10.2007 um 20:00 Uhr
Moin MirkoW,

vielen Dank. werds morgen mal ausprobieren.
Hmm, wenn die Query jetzt immer noch läuft, dann brich es lieber ab.
Dann habe ich doch noch einen Fehler drin...

Grüße
Biber
Bitte warten ..
Mitglied: MirkoW
31.10.2007 um 20:33 Uhr
Hi,

ja hab es natürlich schon zum laufen bekommen.. ohne endlosschleife ;)
Bitte warten ..
Mitglied: Biber
31.10.2007 um 20:47 Uhr
Thx, MirkoW,

falls Du keine Änderungen mehr an dem oben geposteten Schnipsel vornehmen musstest, dann mach bitte so einen grünen Haken dran.

Wenn Du selber die richtige Lösung ausgetüftelt hast, da poste diese.
Und setz das Häkchen dann bitte.

Danke
Biber
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Wert aus einer Spalte mit Werten in einer Spalten vergleiche, wenn Wert vorhanden, dann Wert aus der dritten Spalte in der selben Zeile ausgeben, verschiedene Tabellenblätter
gelöst Frage von DevilioMicrosoft Office5 Kommentare

Hallo Zusammen, ich habe folgendes Problem und finde keine Lösung. Ich habe 2 Tabellenblätter mit folgenden Daten: Tabelle 1: ...

Microsoft Office
Werte in Spalten vergleichen und einsetzen
gelöst Frage von Inge88Microsoft Office4 Kommentare

Halihalo, ich bin neu hier und versuche eine Lösung zu finden, bzw. kompetente Excel-Kenner: Ich habe mehrere Spalten (A, ...

PHP
Werte in einer sql Spalte addieren
gelöst Frage von helmuthelmut2000PHP13 Kommentare

Hallo, Ich habe folgendes Problem. Ich habe eine PHP Seite mit einer MSSQL Datenbank. Da gibt es eine Tabelle ...

Microsoft Office
Excel VBA Wenn Wert in Spalte A Werte und Formeln in weitere Spalten eintragen
gelöst Frage von ExxiStMicrosoft Office3 Kommentare

Hallo zusammen, Wenn in Spalte A "Ergebnis" steht, sollen wie unten beschrieben Formeln in die gleiche Zeile der danebenstehenden ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 20 StundenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 1 TagTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 1 TagSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 1 TagSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Sicherheit
Meltdown und Spectre: Die machen uns alle was vor
Information von FrankSicherheit25 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Netzwerke
Packet loss bei "InternetLeitungsvollauslastung"
gelöst Frage von Freak-On-SiliconNetzwerke17 Kommentare

Servus; Ja der Titel klingt komisch, is aber so. Wenn die Internetleitung voll ausgelastet ist, hab ich extreme packet ...

Ubuntu
Ubuntu - Starter für nicht vertrauenswürdige Anwendungen
Frage von adm2015Ubuntu17 Kommentare

Hallo zusammen, Ich verwende derzeit die Ubuntu Versionen 17.10 bzw. im Test 18.04. Ich habe mehrere .desktop Dateien in ...

Windows 10
Automatische daten kopieren, USB zu USB unter Win10 im Hintergrund
Frage von DerEisigeWindows 1016 Kommentare

Hallo Leute, ich bin auf der Suche nach einem Skript, dass von einem USB Stick automatisch nach dem einstecken ...