Script DELETE un po' complesso

mercoledì 21 novembre 2018 - 01.17
Tag Elenco Tags  SQL Server 2008 R2  |  SQL Server Express

il_dandi Profilo | Newbie

Ciao a tutti!

Ho un problema nel gestire una cancellazione un po' complessa. La tabella ha quesa struttura

CREATE TABLE [dbo].[Dip](
[ID] [int] IDENTITY(1,1) NOT NULL,
[IDDip] [int] NULL,
[IDMa] [int] NULL,
[IDAtt] [int] NULL,
[IDCor] [int] NULL,
[IDStato] [int] NULL,
[DataCorso] [datetime] NULL,
[DataVerifica] [datetime] NULL
CONSTRAINT [PK_DipendentiCorsi] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO


Questi 3 campi
[IDMa] 
[IDAtt] 
[IDCor] 
possono avere diversi valori

Means

IDDip - IDMa - IDAtt - IDCor
111 - 2 - 43 - 65
111 - 2 - 43 - 65 
111 - 2 - 43 - 65 
In questo caso io voglio cancellare tutti i campi uguali e tenerne ONE (cancellare i cloni)

Ristulato

IDDip - IDMa - IDAtt - IDCor
111 - 2 - 43 - 65

Se avessi avuto

IDDip - IDMa - IDAtt - IDCor
111 - 2 - 43 - 65
111 - 2 - 43 - 65 
111 - 1 - 43 - 78 

Il risultato sarebbe stato:

IDDip - IDMa - IDAtt - IDCor
111 - 2 - 43 - 65
111 - 1 - 43 - 78 

Questo processo però deve essere fatto considerando e prendendo in considerazione ogni IDDip ... e questo è il mio problema :(

Quindi se avessi avuto:

IDDip - IDMa - IDAtt - IDCor
111 - 2 - 43 - 65
111 - 2 - 43 - 65 
111 - 1 - 43 - 65 
222 - 1 - 43 - 65 
222 - 1 - 43 - 65 
222 - 3 - 43 - 65 
333 - 3 - 43 - 65 

dopo la procedura di delete avrei dovuto avere:

111 - 2 - 43 - 65
111 - 1 - 43 - 65 
222 - 1 - 43 - 65 
222 - 3 - 43 - 65 
333 - 3 - 43 - 65 

E' possibile creare una query di DELETE di questo tipo?

Grazie!!!!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5