2011-09-13 36 views
11

Estoy ejecutando Hive 071 Tengo una tabla, con varias filas, con el mismo valor de columna , por ejemplo.Distinto en columna específica en Hive

x | y | 
--------- 
1 | 2 | 
1 | 3 | 
1 | 4 | 
2 | 2 | 
3 | 2 | 
3 | 1 | 

quiero tener la columna de la x único, y eliminar filas que tienen el mismo x val por ejemplo

x | y | 
--------- 
1 | 2 | 
2 | 2 | 
3 | 2 | 

o

x | y | 
--------- 
1 | 4 | 
2 | 2 | 
3 | 1 | 

son ambas buenas obras a diferencia única en todo el RS en la colmena, no pude encontrar una manera de hacerlo

ayuda por favor Tx

+3

posible duplicado de [DISTINCT en columna específica de la colmena] (http://stackoverflow.com/questions/7401818/distinct-on-specific-column-in-hive) – Mat

+0

Cualquier solución para este problema? – frugalcoder

Respuesta

1

Puede usar la palabra clave distinct:

SELECT DISTINCT x FROM table 
+3

esto es problemático, ya que necesito recibir tanto X como Y, pero con X distintos. En algunas bases de datos, esto se puede hacer usando "select distinct on x, y from tabel" pero la columna dosent support "distinct on" – Tomer

+0

¡Funcionó para mí, gracias! – Srekk

-2

try siguiente consulta para obtener resultado:

seleccione A.x, A.y a partir de (seleccionar x, y, rango() sobre (partición por x orden por y) según la clasificación de testingg) A donde clasificados = 1;

Cuestiones relacionadas