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

SQL - Vergleich von Datensätzen

Mitglied: derPoschi

derPoschi (Level 1) - Jetzt verbinden

25.06.2008, aktualisiert 01.07.2008, 9275 Aufrufe, 8 Kommentare

Hallo zusammen!

Ich habe folgendes Problem:
In unserer Datenbank gibt es eine Tabelle, in welcher technische Merkmale von Maschinen (Spannung, Strom, Leistung, ...) gespeichert werden.
Insgesamt beinhaltet diese Tabelle weit über 100 Felder.
Wenn jetzt eine Maschine umgebaut wird und sich dadurch deren technische Merkmale verändern, kommt für diese Maschine ein weiterer Datensatz in die Tabelle.
Ich bin jetzt auf der Suche nach einem SQL-Statement, welches die beiden Datensätze dieser Maschine miteinander vergleicht und mir die Unterschiede ausgibt.

Beispiel:

DS1 DS2
Seriennr.: 12345 12345
Version: 1 2
Spannung: 230 V 400 V
Strom: 4 A 4 A
Leistung: 0,7 kW 1,2 kW
Drehzahl: 1500 1500

Der Vergleich sollte dann folgendes Ergebnis bringen:

Version: 1 2
Spannung: 230 V 400 V
Leistung: 0,7 kW 1,2 kW

Bei der Datenbank handelt es sich übrigens um einen MS SQL-Server 2000.

Kennt jemand eine Möglichkeit für einen solchen Vergleich?

Viele Grüße,
der Poschi
Mitglied: Wampe
25.06.2008 um 17:13 Uhr
Ahoi

vorweg ... Ist eine Seriennummer nicht "einmalig" .. sprich beide Geräte können diese doch gar nicht haben, oder?

Ich würde von beiden Geräten einfach dem kompletten Datensatz abfragen und bei der Ausgabe entsprechend vergleichen lassen und nur bei unterschiedlichen Werten eine Ausgabe machen lassen.

gruß Dennis
Bitte warten ..
Mitglied: derPoschi
25.06.2008 um 17:25 Uhr
Hi Dennis!

Vielen Dank für Deine Antwort!
Seriennummern sind auch bei uns einmalig, da es sich ja in beiden Fällen um die selbe Maschine handelt. Es wird an dieser Maschine nur ein evtl. etwas modifiziert, sodass sich einzelne Parameter ändern können.

Die Möglichkeit, beide Datensätze komplett abzurufen und dann später auszuwerten, habe ich auch schon in Betracht gezogen. Das Problem ist nur, dass die Software, in der das ganze dann angezeigt werden soll, sich sehr leicht mit einer SQL-Abfrage füttern lässt. Wenn ich die Auswertung programmtechnisch realisieren will, muss in den Seitenaufbau richtig Arbeit gesteckt werden. Eine SQL-Lösung wäre mir also deutlich lieber.
Irgendwelche Vorschläge?

Gruß,
der Poschi
Bitte warten ..
Mitglied: Wampe
25.06.2008 um 18:10 Uhr
Gibt der Anwender die Maschine Explizit an ala "Ich möchte die unterschiede der Maschinen SN: 12345 haben" oder soll eine Gesamtausgabe von allen Maschinen, wo Veränderungen vorgenommen wurden, gemacht werden?
Bitte warten ..
Mitglied: derPoschi
26.06.2008 um 11:34 Uhr
Moin Dennis!

Es geht jeweils nur um die Änderungen an einer ausgewählten Maschine.Der Anwender soll also die Möglichkeit bekommen, sich von der Infoseite einer Maschine aus anzeigen zu lassen, was sich daran geändert hat.

Viele Grüße,
der Poschi
Bitte warten ..
Mitglied: SvenGuenter
01.07.2008 um 16:22 Uhr
01.
SELECT version,spannung,leistung from TABELLE WHERE seriennummer = '12345' 
02.
 

liefert das gewünschte Ergebnis. Ich verstehe den Vergleich nicht ganz. Was willst du denn vergleichen? Ich verstehe das so das du einfach die Daten zu den Maschinen haben willst. Oder möchtest du nur die Maschinen haben wo es mehr als einen datensatz für gibt?
Dann muss man das mit einem Subselect lösen

Gruß Sven
Bitte warten ..
Mitglied: derPoschi
01.07.2008 um 16:32 Uhr
Hallo Sven!

Das Problem ist folgendes: Die Tabelle enthält nicht nur 4 oder 5 Spalten, wie hier im Beispiel, sondern über 100. Ich weiß natürlich nicht, in welchen Spalten es Unterschiede zwischen den verschiedenen Versionen gibt. Wenn ich mir also alle Spalten ausgeben lasse, muss sich irgendjemand hinsetzen und sämtliche Spalten überprüfen, ob es dort eine Änderung gibt. Genau das möchte ich verhindern. Ziel ist also, dass in der Abfrage nur genau die Spalten ausgegeben werden, in denen es zwischen Version 1 und 2 einen Unterschied gibt; Spalten, in denen es keine Änderung gab, sollen nicht ausgegeben werden (siehe Beispiel oben).
Bitte warten ..
Mitglied: SvenGuenter
01.07.2008 um 16:54 Uhr
ok nun habe ich es. Setze mich nachher mal hin und bastel dir was. Falls nicht jemand schneller sein sollte.

Nur zum Verständnis.

Du willst zu irgendeinen Artikel ( hier Maschinen ) nur die Spalten bekommen die sich unterscheiden. Richtig?

Gruß

Sven
Bitte warten ..
Mitglied: derPoschi
01.07.2008 um 17:05 Uhr
Hi Sven!

Ja, genau! Nur die Spalten, die sich unterscheiden. Wie oben im Beispiel:
Spannung ist bei Version 2 anders als bei Version 1 -> Spannung wird ausgegeben.
Strom unterscheidet sich nicht -> Strom wird nicht ausgegeben.
usw...

Gruß,
Poschi
Bitte warten ..
Ähnliche Inhalte
Datenbanken
SQL Abfrage Update nach Vergleich
gelöst Frage von gigi300885Datenbanken3 Kommentare

Hallo zusammen, ich habe folgendes Problem und leider nicht wirklich eine Idee dazu: Es sind zwei Tabellen die verglichen ...

Datenbanken

Per SQL (Oracle) Alle datensätze des letzten Monats filtern

gelöst Frage von thomas1972Datenbanken6 Kommentare

Hallo ich habe eine Tabelle welche ich abfragen möchte, diese soll mir aber nur die Werte des letzten Monats ...

Datenbanken

Access 2010 SQL Tabellen Datensätze einfügen

gelöst Frage von Dr.CornwallisDatenbanken6 Kommentare

Liebe Gemeinde, ich habe 3 Formulare(Access 2010), die ersten beiden greifen direkt auf einen SQL Table zu(der Table liegt ...

Datenbanken

MS SQL - Zwei Summierungen (für Vergleich) in einer Abfrage möglich?

gelöst Frage von BluejetDatenbanken3 Kommentare

Hallo zusammen, es ist sicher ein einfaches Unterfangen, jedoch weiß ich nicht, wie ich es im Moment lösen soll ...

Neue Wissensbeiträge
Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 13 StundenSicherheit

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 22 StundenInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Erkennung und -Abwehr

Ups: Einfaches Nullzeichen hebelte den Anti-Malware-Schutzt in Windows 10 aus

Information von kgborn vor 1 TagErkennung und -Abwehr

Windows 10 ist das sicherste Windows aller Zeiten, wie Microsoft betont. Insidern ist aber klar, das es da Lücken, ...

Windows 10

Windows 10 on ARM: von Microsoft entfernte Info - Klartext, was nicht geht

Information von kgborn vor 1 TagWindows 10

Windows 10 on ARM ist ja eine neue Variante, die Microsoft im Verbund mit Geräteherstellern am Markt etablieren will. ...

Heiß diskutierte Inhalte
Server
Route-Befehl Unterstützung (unter CMD)
gelöst Frage von FKRR56Server36 Kommentare

Guten Tag , i.M. habe ich Probleme über den CMD-Route-Befehl ein Routing auf einen entfernten Server zuzulassen. Der Server ...

Windows 10
Windows 10 (1709) Tastur und Maus wieder einschalten?
Frage von LochkartenstanzerWindows 1028 Kommentare

Moin, Ich habe von einem Kunden einen Win10-Rechner bekommen, bei dem weder Tastatur noch Maus geht. Die Hardware funktioniert ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgbornMicrosoft17 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Webbrowser
Welcher Browser ist der Beste?
Frage von justtinWebbrowser15 Kommentare

Hallo Leute Ich habe eine interessante Frage. Mich wurde mal interessieren welcher Browser ist eure meinung nach der beste? ...