¿Cómo mostrar primer campo?

Tengo que mostrar una base de datos en un dbgrid pero hay ciertos registros que tienen un campo con el mismo valor, así que tengo que mostrar solo el primer registro de esa base de datos con el valor y si se repite en otro registro el campo con el mismo valor, no mostrarlo,¿cómo se podría hacer eso? Puede ser de cualquier forma, usando sql, o como tu sepas :)

3 respuestas

Respuesta
1
Hi,
Mira, lo que vas a tener que hacer es una consulta SQL. Por si no sabes como se hace acá van los pasos:
1 - Agregas un objeto DBQuery en el formulario.
2 - Agregas la consulta en la propiedad SQL.
3 - Para ejecutarla tienes que hacer DBQuery. Open.
Una vez hecha la consulta tienes que vincular la DBGrid con la consulta. Esto se hace de la misma manera que se vincula una Table.
Bueno, ahora lo que tienes que hacer para que no te muestre los repetidos es agregar en la consulta SELECT que vas a hacer una clausula llamada DISTINCT que elimina los repetidos.
Ejemplo:
"SELECT DISTINCT personas.nombre WHERE personas.edad > 18;"
Con esta consulta, si aparecen 2 Carlos, muestra solo uno.
Ejemplo 2:
"SELECT DISTINCT personas.nombre, ciudad.nombre WHERE personas.idciudad = ciudad.idciudad;"
En esta consulta, se eliminan los nombre repetidos y las ciudades repetidas.
Espero que te sirva la solución. Cualquier consulta no dudes en preguntarme.
Nahuelon..
Respuesta
1
Puedes seleccionar los datos sin repeticiones con una query que use DISTINCT, de la siguiente forma
SELECT DISTINCT CAMPO FROM TABLAS WHERE...
Solo mostrará los valores CAMPO no repetidos. Otra posibilidad es agrupar los registros por valores, con GROUP BY, así:
SELECT CAMPO1,CAMPO2 FROM TABLA GROUP BY CAMPO1,CAMPO2
Respuesta
1
Seria bueno que te explayaras un poco más, un Ejemplo sencillo tal vez.
¿Por ejemplo me gustaría saber si ese campo es una clave?
Cualquier cosa pregunta otra vez, Atentamente. DX.
PD: Acordate de finalizar la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas