sql >> Base de Datos >  >> RDS >> Mysql

Seleccione solo una fila/registro único en mysql

Puede usar este truco exclusivo de mysql:

SELECT city, state_prefix, lattitude,longitude
FROM zip_code WHERE city LIKE '$queryString%'
GROUP BY city, state_prefix -- Here's the trick
LIMIT 10

Esto devolverá la primera fila encontrada para cada valor único de city y state_prefix .

Otras bases de datos se quejarán de que tiene columnas no agregadas que no figuran en el grupo o algún mensaje similar.

Editado

Anteriormente afirmé que no usar upper() en las columnas agrupadas por, devolvería todas las variaciones de mayúsculas y minúsculas, pero eso era incorrecto, gracias a SalmanA por señalarlo. Verifiqué usando SQLFiddle y no necesitas usar upper() .