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

Frage Entwicklung Datenbanken

Mitglied: derPoschi

derPoschi (Level 1) - Jetzt verbinden

25.06.2008, aktualisiert 01.07.2008, 9252 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
MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 9 StundenMikroTik RouterOS4 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 9 StundenSicherheit

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Administrator.de Feedback

Entwicklertagebuch: Die Startseite wurde überarbeitet

Information von admtech vor 12 StundenAdministrator.de Feedback9 Kommentare

Hallo Administrator User, mit dem Release 5.7 haben wir unsere Startseite überarbeitet und die Beiträge und Fragen voneinander getrennt. ...

Vmware

VMware Desktopprodukte sind verwundbar

Information von Penny.Cilin vor 17 StundenVmware

Die VMware-Anwendungen zum Umgang mit virtuellen Maschinen Fusion, Horizon Client und Workstation sowie die Plattform NSX sind verwundbar. Davon ...

Heiß diskutierte Inhalte
Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail
Frage von ahstaxVisual Studio24 Kommentare

Hallo, ich möchte gerne ein vb.net-Tool schreiben, das am Ende eine Outlook-E-Mail erzeugt. Grundsätzlich ist mir klar, wie das ...

Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server16 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows Netzwerk
Netzwerk Neustrukturierung
Frage von IT-DreamerWindows Netzwerk16 Kommentare

Hallo verehrte Community und Admins, bei uns im Haus steht eine Neustrukturierung an. Dafür benötige ich von euch ein ...

Windows 10
Windows 10 dunkler Bildschirm nach Umfallen
Frage von AkcentWindows 1015 Kommentare

Hallo, habe hier einen Windows 10 Rechner der von einem User umgefallen wurde (Beine übers Knie, an den PC ...