Ejemplo 1: sql eliminar duplicado
-- Oracle
DELETE films
WHERE rowid NOT IN (
SELECT min(rowid)
FROM films
GROUP BY title, uk_release_date
);
Ejemplo 2: el servidor SQL elimina registros que tienen una sola columna duplicada
WITH cte AS (
SELECT
contact_id,
first_name,
last_name,
email,
ROW_NUMBER() OVER (
PARTITION BY
first_name,
last_name,
email
ORDER BY
first_name,
last_name,
email
) row_num
FROM
sales.contacts
)
DELETE FROM cte
WHERE row_num > 1;
Ejemplo 3: como eliminar duplicados en sql
Distinct: helps to remove all the duplicate
records when retrieving the records from a table.
SELECT DISTINCT FIRST_NAME FROM VISITORS;
Ejemplo 4: consulta SQL para eliminar registros duplicados
--ID should be primary key
--get duplicate records using RANK
SELECT E.ID,
E.firstname,
E.lastname,
E.country,
T.rank
FROM [SampleDB].[dbo].[Employee] E
INNER JOIN
(
SELECT *,
RANK() OVER(PARTITION BY firstname,
lastname,
country
ORDER BY id) rank
FROM [SampleDB].[dbo].[Employee]
) T ON E.ID = t.ID;
--delete duplications
DELETE E
FROM [SampleDB].[dbo].[Employee] E
INNER JOIN
(
SELECT *,
RANK() OVER(PARTITION BY firstname,
lastname,
country
ORDER BY id) rank
FROM [SampleDB].[dbo].[Employee]
) T ON E.ID = t.ID
WHERE rank > 1;
Ejemplo 5: consulta eliminar duplicados
DELETE FROM dups a USING (
SELECT MIN(ctid) as ctid, key
FROM dups
GROUP BY key HAVING COUNT(*) > 1
) b
WHERE a.key = b.key
AND a.ctid <> b.ctid
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)