sql - solo - Cómo seleccionar todas las filas que tienen el mismo valor en alguna columna
sql eliminar registros repetidos dejando solo 1 (4)
Puedes hacer esto sin un JOIN
:
SELECT *
FROM (SELECT *,COUNT(*) OVER(PARTITION BY phone_number) as Phone_CT
FROM YourTable
)sub
WHERE Phone_CT > 1
ORDER BY phone_number, employee_ids
Demo: SQL Fiddle
Soy nuevo en SQL, así que por favor sea amable.
Suponga que debo mostrar todos los employee_ids que tienen el mismo número de teléfono (ambas columnas están en la misma tabla)
¿Cómo voy a proceder en este problema de unión interna o algo así.
Qué tal si
SELECT *
FROM Employees
WHERE PhoneNumber IN (
SELECT PhoneNumber
FROM Employees
GROUP BY PhoneNumber
HAVING COUNT(Employee_ID) > 1
)
DEMO de SQL Fiddle
SELECT * FROM employees e1, employees e2
WHERE e1.phoneNumber = e2.phoneNumber
AND e1.id != e2.id;
Actualización : para un mejor rendimiento y una consulta más rápida, es bueno agregar e1
antes *
SELECT e1.* FROM employees e1, employees e2
WHERE e1.phoneNumber = e2.phoneNumber
AND e1.id != e2.id;
select *
from Table1 as t1
where
exists (
select *
from Table1 as t2
where t2.Phone = t1.Phone and t2.id <> t1.id
)