Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

MS SQL verknüpfte Abfrage DELETE Befehl

Frage Entwicklung Datenbanken

Mitglied: StfnCstr

StfnCstr (Level 1) - Jetzt verbinden

29.05.2013 um 11:19 Uhr, 2090 Aufrufe, 4 Kommentare

Hallo, habe folgende Abfrage deren Inhalte ich löschen möche.




SELECT *
FROM dbo.FaxJobs a, dbo.FaxAttachments b
Where a.JobID = b.JobID and a.CreationDate <= CONVERT(datetime, '01.01.2013 00:00:00', 104)
order by a.CreationDate

versucht habe ich es mit

DELETE
FROM dbo.FaxJobs a, dbo.FaxAttachments b
Where a.JobID = b.JobID and a.CreationDate <= CONVERT(datetime, '01.01.2013 00:00:00', 104)
order by a.CreationDate

wobei mir immer folgender Fehler ausgeworfen wird :

Meldung 102, Ebene 15, Status 1, Zeile 1
Falsche Syntax in der Nähe von 'a'.


Ich glaube ich schaue schon zulange drauf um den Fehler zu finden, vieleicht könnt ihr helfen.

VIelen Dank

Stefan
Mitglied: LianenSchwinger
29.05.2013, aktualisiert um 11:47 Uhr
Hallo Stefan,

ich kenne mich zwar mit MS SQL nicht so aus, aber ich denke Du kannst nicht aus dem JOIN aus FaxJobs und FAXAttachments gleichzeitig Zeilen löschen.

G Jörg
Bitte warten ..
Mitglied: Biber
29.05.2013, aktualisiert um 11:50 Uhr
Moin StfnCstr,


willkommen im Forum.

a) bei einem DELETE-Statement ist ein ORDER BY weder unterstützt noch sinnvoll.
b) du kannst nicht in zwei Tabellen "parallel" löschen - du musst dich für eine Tabelle entscheiden.

Wenn ich es inhaltlich richtig verstehe, sollen alle "älteren" Datensätze gelöscht werden, die in Alias a und b existieren (a und b über JobID verknüpft) und das "älter" wird ermittelt aus a.CreationDate.

Also musst du zuerst die aus Alias b (den FaxAttachments) löschen mit
01.
DELETE FROM Dbo.FaxAttachments 
02.
where JOBID in 
03.
( Select a.JobID  
04.
FROM dbo.FaxJobs a, dbo.FaxAttachments b 
05.
Where a.JobID = b.JobID and a.CreationDate <= CONVERT(datetime, '01.01.2013 00:00:00', 104)  
06.
);
und im 2. Schritt die Sätze aus FaxJobs mit CreationDate > DatumX;

Grüße
Biber
Bitte warten ..
Mitglied: StfnCstr
29.05.2013 um 11:57 Uhr
Hallo Biber,

klar, Order BY ist sinnlos, hat mir lediglich geholfen die Daten anzuzeigen. Mit unterabfragen habe ich es auch versucht, jedoch immer angefangen mit der Faxjobs tabelle.

Jetzt funktioniert es, danke dir für die Mühe

grüße

PS: Ticket kann als erledigt markiert werden.
Bitte warten ..
Mitglied: Biber
29.05.2013 um 17:02 Uhr
Moin StfnCstr,

Zitat von StfnCstr:
PS: Ticket kann als erledigt markiert werden.

Ähhm ja - allerdings kann/soll das bei uns der Beitragsersteller selbsttätig machen.
Wenn du eingeloggt bist, dann siehst du bei DEINEM Beitrag auch einen Button "Frage als gelöst markieren". mit einem WG-Mortadellafarbenen Häkchen.

Danke aber für die Rückmeldung.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst MS SQL Abfragen und Formulare in Webseite einbinden (3)

Frage von Machello zum Thema Datenbanken ...

Datenbanken
gelöst SQL Abfrage mit Visual Studio (5)

Frage von specialuser zum Thema Datenbanken ...

Datenbanken
gelöst SQL-Abfrage mit "kleiner gleich" funktioniert nicht (2)

Frage von derSESO zum Thema Datenbanken ...

Datenbanken
SQL - Abfragen Nachfrage (2)

Frage von PronMaster zum Thema Datenbanken ...

Neue Wissensbeiträge
Humor (lol)

Wohnt jemand in Belgien und kann nicht mehr ruhig ausschlafen?

(3)

Information von LordGurke zum Thema Humor (lol) ...

Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
Gruppenrichtlinie greift nicht zu! (24)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...

Voice over IP
DeutschlandLAN IP Voice Data M Premium, Erfahrung mit Faxgeräte? (16)

Frage von liquidbase zum Thema Voice over IP ...