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

Problem mit LöschAbfrage.. ältesten Datensatz beibehalten alle anderen löschen

Frage Entwicklung Datenbanken

Mitglied: karlchristian

karlchristian (Level 1) - Jetzt verbinden

20.08.2014, aktualisiert 09:30 Uhr, 1299 Aufrufe, 6 Kommentare

Hallo,

ich habe eine Frage zu einer LöschAbfrage, wo ich nicht genau weis Sie aufzubauen.

Ich habe eine Tabelle mit X Spalten u.a. Ref und Anlagedatum

Der Wert Ref ist x mal vorhanden,
nun möchte ich alle Werte dieser Tabelle löschen bis auf den ältesten Wert
so das nur noch 1x der Wert in der Spalte REF übrig bleibt

Ich drehe mich ein Wenig im Kreis, vielleicht kann mir jemand helfen

Mitglied: killer2012
20.08.2014 um 09:32 Uhr
moin KarlChristian

beim SQL-Server:

select * from tabelle order by ref desc

letztes Datum ablesen

delete from tabelle
where ref<'datum'

normalerweise '20.08.2014'

cu Rainer
Bitte warten ..
Mitglied: MadMax
20.08.2014 um 09:43 Uhr
Guten Morgen karlchristian,

dazu zwei Fragen:
1. Gibt es auch eine ID oder sonstwas eindeutiges?
2. Welche Datenbank?

Gruß, Mad Max
Bitte warten ..
Mitglied: karlchristian
20.08.2014, aktualisiert um 09:58 Uhr
Hallo Rainer,

danke für den Hinweis,

irgendwie liefert er mit immer noch alle Datensätze

Vielleicht hab ich mich auch missverständlich ausgedrückt.
In der Tabelle habe ich x mal den Wert Ref mit einer Spalte anlagedatum

REF Anlagedatum
1 01.02.2014
1 02.02.2014
1 03.02.2014
1 04.02.2014
2 10.04.2014
2 11.04.2014
2 12.04.2014

nun möchte ich alle Datensätze löschen lassen wo nur noch der älteste Wert übrig bleibt

REF Anlagedatum
1 01.02.2014
2 10.04.2014


Vielleicht verdeutlicht es nun einfacher was ich erreichen möchte
Bitte warten ..
Mitglied: karlchristian
20.08.2014 um 10:05 Uhr
Es handelt sich um eine MSSQL im Hintergrund die vorne mit Access bedient wird.
Der Wert Ref ist die ID (doppelte Werte zulässig)
Bitte warten ..
Mitglied: karlchristian
20.08.2014 um 10:22 Uhr
Ich habs nun änders gelöst,
min Wert am Datum vorblenden lassen
Das Ergebnis gespeichert
und in der Datenbank einen Primärschlüssel auf den Ref gelegt so das in Zukunft keine doppelten Werte mehr angelegt werden können.
Tabelle geleert
und die bereits "ältesten " Daten nur wieder eingefügt..

Danke aber nochmal..
Bitte warten ..
Mitglied: killer2012
20.08.2014 um 10:48 Uhr
moin KarlChristian
so wäre es eleganter gewesen

USE deine_tabelle
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DECLARE @del1 int, @del2 int, @datum date

DECLARE cursor_del1 CURSOR scroll for
select distinct(ref), abfragedatum
from deine_tabelle
order by ref, abfragedatum

OPEN cursor_del1
FETCH NEXT FROM cursor_del1 INTO @del1, @datum
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE cursor_del2 CURSOR scroll for
select ref
from deine_tabelle
where ref=@del1
order by abfragedatum
OPEN cursor_del2
FETCH FIRST FROM cursor_del2 into @del2
FETCH NEXT FROM cursor_del2 into @del2
WHILE @@FETCH_STATUS = 0
BEGIN
delete from deine_tabelle
where current of cursor_del2
FETCH NEXT FROM cursor_del2 INTO @del2
END
CLOSE cursor_del2
DEALLOCATE cursor_del2

FETCH NEXT FROM cursor_del1 INTO @del1, @datum

END

CLOSE cursor_del1
DEALLOCATE cursor_del1

cu Rainer
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst älteste dateien via batch löschen (6)

Frage von cali169 zum Thema Batch & Shell ...

Batch & Shell
Fileserver Daten älter als 14 Tage löschen! (11)

Frage von michi-ffm zum Thema Batch & Shell ...

Datenbanken
gelöst Access 2010 SQL Tabellen Datensätze einfügen (6)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Neue Wissensbeiträge
Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(3)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
SAN, NAS, DAS
MSA 2050 RAID Konfig (27)

Frage von Leo-le zum Thema SAN, NAS, DAS ...

Microsoft Office
Office Druck fehler (12)

Frage von DaistwasimBusch zum Thema Microsoft Office ...

Festplatten, SSD, Raid
Uninitialisierte Festplatte - Daten retten (11)

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

Netzwerkmanagement
Windows Server 2008 R2: "netsh reset" nicht verfügbar? (11)

Frage von RickTucker zum Thema Netzwerkmanagement ...