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
GELÖST

Wie kann ich zwei Zeilen einer Datenbank zu einer verschmelzen und unterschiedliche Spalten zusammenkombinieren?

Frage Microsoft Microsoft Office

Mitglied: stevensqwe

stevensqwe (Level 1) - Jetzt verbinden

15.04.2010, aktualisiert 23:13 Uhr, 3628 Aufrufe, 9 Kommentare

Hey!
Bräuchte Eure Hilfe bzgl. eines Fusion-Problems, an dem ich gerade knabbere...
Schönen Gruß,
stevens

Zwei Zeilen einer Tabelle wie z.B.:

LotNumber TaskName StartDate StartTime EndDate EndTime
1000 A 1.1.2010 10:00 2.1.2010 21:00
1000 B 3.1.2010 19:00 5.1.2010 20:00
....


sollen folgend kombiniert werden:

LotNumber StartDate StartTime EndDate EndTime
1000 1.1.2010 10:00 5.1.2010 20:00

d.h. bei gleichen LotNumbers soll der kleinere StartDate und StartTime mit dem größeren EndDate und EndTime kombiniert werden, so dass wie im Beispiel bei LotNumber 1000 nun der StartDate und StartTime vom TaskName A verwendet wird und der EndDate und EndTime von TaskName B.

Wie könnte ich dies realisieren?
Mitglied: dog
16.04.2010 um 00:51 Uhr
Eine Möglichkeit in MySQL (nicht die schnellste):
01.
SELECT a.LotNumber, 
02.
(SELECT CONCAT(b.StartDate," ",b.StartTime) FROM test1 b WHERE b.LotNumber = a.LotNumber ORDER BY b.StartDate, b.StartTime LIMIT 1) AS `Start`, 
03.
(SELECT CONCAT(c.EndDate," ",c.EndTime) FROM test1 c WHERE c.LotNumber = a.LotNumber ORDER BY c.EndDate DESC, c.EndTime DESC LIMIT 1) AS `End` 
04.
 FROM test1 a GROUP BY a.LotNumber
Bitte warten ..
Mitglied: stevensqwe
16.04.2010 um 18:22 Uhr
Hi dog,
hab versucht, den MySQL Code in ACCESS SQL umzustricken, aber irgendwie streikt ACCESS (d.h. concat gegen & ausgetauscht (zuerst, dann mit + für eine Datums- und UhrzeitAddition) und limit 1 durch top 1), geht aber leider nicht... irgendeine Idee?

01.
SELECT A.LotNumber, 
02.
(SELECT (B.StartDate + B.StartTime) FROM M_LotNumber_StartEnd AS B  
03.
WHERE B.LotNumber = A.LotNumber  
04.
ORDER BY B.StartDate, B.StartTime TOP 1) AS Start,  
05.
(SELECT (C.EndDate + C.EndTime) FROM M_LotNumber_StartEnd AS C  
06.
WHERE C.LotNumber = A.LotNumber  
07.
ORDER BY C.EndDate DESC, C.EndTime DESC TOP 1) AS End 
08.
FROM M_LotNumber_StartEnd AS A  
09.
GROUP BY A.LotNumber
Fehlermeldung: Syntaxfehler . in Abfrageausdruck '(SELECT (B.StartDate + B.StartTime) FROM M_LotNumber_StartEnd AS B WHERE B.LotNumber = A.LotNumber ORDER BY B.StartDate, B.StartTime TOP 1)'.




[Edit Biber] Das letzte Mal für heute: Code-Tags nachgetragen. [/Edit]
Bitte warten ..
Mitglied: Biber
16.04.2010 um 19:10 Uhr
Moin stevensqwe,

Access kennt weder LIMIT noch TOP. (Soweit ich weiss)

Wenn du die beide "TOP 1"-Stellen löscht, solltest du zumindest einen Resultset auf den Schirm bekommen.

Und wenn ich das Gestrunkele Statement richtig inhaliere, meinst du doch mit diesem ORDER BY...TOP 1 soviel
wie weniger komplex formulierende Menschen mit einem MAX() ...oder MIN() der Start/Endezeitpunkte bekunden würden.

Warum sagst du das dem Access nicht?

Nachtrag: so zum Beispiel:
01.
SELECT A.LotNumber, 
02.
(SELECT max(B.StartDate + B.StartTime) FROM M_LotNumber_StartEnd AS B  
03.
WHERE B.LotNumber = A.LotNumber ) AS Start,  
04.
(SELECT min(C.EndDate + C.EndTime) FROM  M_LotNumber_StartEnd AS C  
05.
WHERE C.LotNumber = A.LotNumber  
06.
) AS End 
07.
FROM M_LotNumber_StartEnd AS A  
08.
GROUP BY A.LotNumber
Grüße
Biber
Bitte warten ..
Mitglied: stevensqwe
17.04.2010 um 00:21 Uhr
Tach Biber,

irgendwie ist ACCESS mit dem A.LotNumber irgendwo nicht ganz einverstanden und beklagt sich:

"Das angegebene Feld 'A:LotNumber' kann sich auf mehr als eine der Tabellen beziehen, ..."

Was kann man da noch anders machen?

Schönen Gruß,
stevens
Bitte warten ..
Mitglied: Biber
17.04.2010 um 15:39 Uhr
Moin stevensqwe,

das weiss ich so auch nicht - ich sehe da keinen Syntax-Fehler.

Ist aber auch insofern erstmal egal, da sich eigentlich zwei Folgefragen ergeben..

1. Wenn du wirklich "nur" die drei Felder Lotnumber, Max(StartZeit) der LotNumber, Min(Endzeit) der Lotnumber brauchen würdest OHNE weitere Attribute...
Dann bräuchtest du auch nicht über drei (logische) Tabellen gehen, sondern nur über eine.

01.
 SELECT LotNumber, 
02.
                   max(StartDate + StartTime) AS Start,  
03.
                   min(EndDate + EndTime) AS End 
04.
          FROM M_LotNumber_StartEnd  
05.
GROUP BY LotNumber
2. Wenn du aber mehr Attribute brauchst, dann müssen die ja entweder aus dem Datensatz mit der Max-Startzeit oder dem mit der Min-Endzeit kommen.
Also dann: welche Attribute woher, falls Variante 1 nicht ausreicht?

Grüße
Biber
Bitte warten ..
Mitglied: stevensqwe
17.04.2010 um 18:32 Uhr
Hi Biber,

die Lösung ist spitze! Ja, ich brauche noch eine weitere Einschränkung, aber die muss ich nicht mit auflisten, sondern kann sie mit einem WHERE abfackeln... Wir hatten oben noch vertauscht, dass die kleinste Anfangszeit und die größte Endzeit herausgefilter wird, aber dann ist es PERFEKT! Danke nochmal!!

SELECT LotNumber, min(StartDate + StartTime) AS Start, max(EndDate + EndTime) AS End
FROM M_LotNumber_StartEnd
WHERE LyoNr="RL-1"
GROUP BY LotNumber;
Bitte warten ..
Mitglied: Biber
17.04.2010 um 18:56 Uhr
Moin stevensqwe,

freut mich, wenn es so passt.
Die beiden Zeitpunktwerte hatte ich zu flüchtig gelesen - ich war vom spätest möglichen Start- und dem frühest möglichen Endezeitpunkt ausgegangen.

Schönes Wochenende
Biber
Bitte warten ..
Mitglied: stevensqwe
17.04.2010 um 19:31 Uhr
Hi Biber,
noch ein kleiner Nachtrag: Die Benennung End hat den Parser dazu ermutigt, eckige Klammern drumzumachen und zwischenzeitlich ziemlich random einfach keine Ergebnisse zu liefern... Hab einfach End in EndZ umbenannt und jetzt läuft's stabil... Keine Ahnung, was das schon wieder seitens ACCESS war?!
Herzlichen Dank Dir und ein schönes Wochenende!!!
stevens
Bitte warten ..
Mitglied: Biber
17.04.2010 um 19:54 Uhr
Moin stevensqwe,

die eckigen Klammern sind wieder verursacht durch die Verwendung eines "reservierten Wortes".
Ich habe gestern oder vorgestern in einen anderen Access-Beitrag einen Link auf die von M$ veröffenliche Liste gepostet, aber ich glaube, es steht auch sogar in den Access-Hilfedateien.

Das Umbenamsen von "End" in "EndZ" war auf jeden Fall die richtige Reaktion.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MS SQL View - Zeile in Spalte
Frage von StfnCstrDatenbanken1 Kommentar

Hallo Zusammen, folgende View habe ich erstellt und folgendes Ergebnis bekommen. Leider brauche ich die Rufnummernart in einer Spalte, ...

Datenbanken
Zwei Access Datenbanken zusammenführen
Frage von geocastDatenbanken5 Kommentare

Hallo Zusammen Ich habe hier zwei Accessdatenbanken von einer internen Betriebssoftware. Vom Aufbau her sind sie Identisch, nur eben ...

Datenbanken
Trigger zwischen zwei Datenbanken
Frage von PhobozDatenbanken1 Kommentar

Guten Tag, folgendes Szenario: ich habe zwei Postgresql 9.2 Datenbanken auf unterschiedlichen Servern: Server1DB01 mit schemaA.TabelleA Server2DB02 mit schemaA.TabelleA ...

Datenbanken
MySQL: Zwei Spalten in einer View zählen
Frage von Memo66Datenbanken11 Kommentare

Hallo, ich habe eine Fussballdatenbank mit der Tabelle 'Tore' die wie folgt aussieht Ich möchte nun aus Abfrage wo ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 21 StundenApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 1 TagWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 1 TagWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 1 TagInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
Hardware
Kein Bild mit nur einer bestimmten Grafikkarten - Mainboard Konfiguration
Frage von bestelittHardware18 Kommentare

Hallo zusammen, ich hatte schon einmal eine ähnliche Frage gestellt. Damals hatte ich genau das gleiche Problem. Allerdings lies ...

Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server18 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement16 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...