2012-08-22 7 views
17

Estoy tratando de seleccionar una fila con una identificación distinta, pero devuelvo todos los campos.MySQL select * con identificación distinta

SELECT * DISTINCT(ID) FROM table WHERE ... 

En última instancia necesito la ID, ciudad, estado y código postal. ¿Cómo puedo obtener filas que no son ID duplicadas y devolver todos los campos en mi mysql_fetch_array?

He intentado lo siguiente:

SELECT * DISTINCT(ID) FROM table WHERE ... 

SELECT DISTINCT ID * FROM table WHERE ... 

SELECT ID,City,State,Zip DISTINCT ID FROM ... 

SELECT ID,City,State,Zip DISTINCT(ID) FROM ... 

estaba leyendo otras preguntas aquí y ninguno parece ayudar. ¡Gracias por adelantado!

+0

'DISTINCT' simplemente volverá identificadores únicos de la tabla; ¿Qué estás tratando de hacer exactamente? –

+1

Necesito más que solo los ID ... gracias a – NotJay

+1

Entonces con el mismo id, ¿qué registro debería seleccionarse? – xdazz

Respuesta

27

Intente utilizar GROUP BY:

select id, city, state, zip 
    from mytable 
group by id 

Tenga en cuenta que esto va a devolver una dirección arbitraria para cada id si hay duplicados.

Demostración: http://www.sqlfiddle.com/#!2/c0eba/1

+0

¿Agregaré el grupo antes o después del DONDE? – NotJay

+5

@NotJay - group by goes after the –

+0

Perfecto .... Muchas gracias. Primera vez que usa Group By! – NotJay

Cuestiones relacionadas