Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

mysql update und neue daten in eine andere Tabelle eintragen

Frage Entwicklung Datenbanken

Mitglied: cooperraser

cooperraser (Level 1) - Jetzt verbinden

08.10.2008, aktualisiert 09.10.2008, 5761 Aufrufe, 2 Kommentare

hallo,
habe schon viel im netz geschaut und nichts gefunden,

also habe hier zwei tabellen, daten werden in tabelle1 per csv-import eingepflegt
aus tabelle1 sollen immer die werte einer spalte ausgelesen werden und in der zweiten die entsprechende spalte upgedatet werden, das geht soweit,

allerding möchte ich neue datensätze welche in tabelle2 noch nicht vorhanden sind in eine extra tabelle einfügen, um sie dann manuell einzuplegen bzw. selbst einen überblick darüber zu erhalten, was neu ist

also vom prinzip habe ich mir das so gedacht

wenn tabelle1.spalte4 = tabelle2.spalte3 //das sind die daten nach den sich gerichtet wird
{
dann ("UPDATE tabelle2 SET tabelle2.spalte2 = tabelle1.spalte3 WHERE tabelle1.spalte4 = tabelle2.spalte3");
}
sonst ("INSERT INTO tabelle3 (spalte1, spalte2, spalte3,spalte4) value('".$data[0]."',
'".$data[1]."', '".$data[2]."', '".$data[3]."')";
}

ich komm da jetzt leider nicht weiter, ich weiß nicht was ich statt "wenn", "dann" und "sonst" setzen muß
bin noch ein newbie

oder ich bin komplett falsch
bin für jede hilfe dankbar, mfg
Mitglied: Biber
08.10.2008 um 23:42 Uhr
Moin cooperraser,

ich verstehe offen gestanden die SONST-Logik nicht.
Erwartet hätte ich dort, dass Du auch die neuen Datensätze für Tabelle3 aus der Tabelle1 holst.

Alle Sätze der Import-Tabelle1 sind
  • entweder vorhanden in Tabelle2->dann dort updaten
  • oder NICHT vorhanden in Tabelle2 ->dann in Tabelle3 INSERTen

-> Also zwei Statements mit jeweils Update... WHERE/Insert ...Where ... -->also ResultSets
aber nix mit Einzelsatz-INSERT ..values ...

Zusatzfrage:
.... und wenn die DS in Tabelle3 schon vorhanden sind? Oder gibt es da keinen PK?

Grüße
Biber
Bitte warten ..
Mitglied: cooperraser
09.10.2008 um 10:48 Uhr
zu der \"sonst\" logik, ich hab doch nicht die Ahnung, newbie

allerding das-->
Alle Sätze der Import-Tabelle1 sind
entweder vorhanden in Tabelle2->dann dort updaten
oder NICHT vorhanden in Tabelle2 ->dann in Tabelle3 INSERTen
--habe ich verstanden, es hapert mir jetzt an der umsetzung bzw. mir fehlt die befehlsfolge oder so,
muss ich das mit einer schleife machen ???? ick weiß es nicht

also nochmal nur zur abfrage

Datensatz ist vorhanden:
UPDATE tabelle1, tabelle2 SET tabelle2.spalte2 = tabelle1.spalte3 WHERE tabelle1.spalte4 = tabelle2.spalte3

Datensatz ist nicht vorhanden:
UPDATE tabelle1, tabelle3 SET tabelle3.spalte2 = tabelle1.spalte3 WHERE tabelle1.spalte4 != tabelle2.spalte3

oder so?!:
INSERT INTO tabelle3 SET ... ON DUPLICATE KEY UPDATE tabelle1, tabelle3 SET tabelle3.spalte2 = tabelle1.spalte3 WHERE tabelle1.spalte4 != tabelle2.spalte3;

danke schon mal
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst MySQL - Feld aus anderer Tabelle hinzusummieren? (5)

Frage von 1410640014 zum Thema Datenbanken ...

Entwicklung
gelöst SQL Update aus derselben Tabelle (1)

Frage von winscheil zum Thema Entwicklung ...

Microsoft Office
Kopieren von auszuwählenden Daten in weitere Tabelle (1)

Frage von dus100 zum Thema Microsoft Office ...

Webbrowser
gelöst Daten in entfernte Mysql DB schreiben (3)

Frage von nullacht15 zum Thema Webbrowser ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 im Unternehmen? (26)

Frage von zorlayan zum Thema Windows 10 ...

LAN, WAN, Wireless
Ping u. DNS geht am Rechner nicht mehr (19)

Frage von Kuemmel zum Thema LAN, WAN, Wireless ...

Festplatten, SSD, Raid
Raid 1 2 SSD mit Windows Server 2016 (17)

Frage von jaywee zum Thema Festplatten, SSD, Raid ...