sql - porque - Múltiple NO distinto
porque se dañan las tablas en mysql (4)
Tengo una base de datos de acceso MS y necesitaría crear una consulta SQL que me permita seleccionar todas las entradas no distintas en una columna, manteniendo todos los valores.
En este caso, más que nunca, un ejemplo vale miles de palabras:
Mesa:
A B C
1 x q
2 y w
3 y e
4 z r
5 z t
6 z y
Magia de SQL
Resultado:
B C
y w
y e
z r
z t
z y
Básicamente, elimina todos los valores únicos de la columna B pero mantiene las múltiples filas de los datos almacenados. Puedo "agrupar por b" y luego "contar> 1" para obtener el no distintivo, pero el resultado solo mostrará una fila de B, no las 2 o más que necesito.
¿Alguna ayuda?
Gracias.
únase a los valores únicos de B que ha determinado con group by b y count> 1 a la tabla original para recuperar los valores C de la tabla.
Otra forma de devolver los resultados que desea sería esta:
select *
from
my_table
where
B in
(select B from my_table group by B having count(*) > 1)
select
*
from
my_table t1,
my_table t2
where
t1.B = t2.B
and
t1.C != t2.C
-- apparently you need to use <> instead of != in Access
-- Thanks, Dave!
¿Algo como eso?
Select B, C
From Table
Where B In
(Select B From Table
Group By B
Having Count(*) > 1)