Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Agregar columna a DBgrid luego de ejecutar la consulta (https://www.clubdelphi.com/foros/showthread.php?t=95743)

ingel 06-07-2022 19:13:50

Agregar columna a DBgrid luego de ejecutar la consulta
 
Buenas tardes. Tengo 2 tablas y una Query que hace un Join (no es tan simple en realidad pero el caso simple seria ese) y muestro todo en un DBgrid relacionado a la Query. El problema es que en la segunda tabla no siempre tengo registros que se relacionen con la primera entonces me muestra MENOS registros que los que hay en la primera obviamente. Yo necesito que muestre TODOS los registros que existen en la primera y si ademas hay registros en la segunda tambien mostrarlos, sino mostrar vacio . Lo clasico seria con un StringGrid , recorrer y si hay registro agrego una cloumna, pero queria ver si hay forma de resolverlo sin tener que cambiar el componente y agregar tanto codigo.
GRACIAS a todos por su tiempo.

Casimiro Notevi 06-07-2022 19:44:13

Creo entender que debes usar
Código SQL [-]
left join

Neftali [Germán.Estévez] 07-07-2022 10:25:53

[Casimiro] te ha dado la pista.

Lo tienes explicado aquí:
https://diego.com.es/principales-tipos-de-joins-en-sql

Pero resumido sería esto:

Los JOINs en SQL sirven para combinar filas de dos o más tablas basándose en un campo común entre ellas, devolviendo por tanto datos de diferentes tablas. Un JOIN se produce cuando dos o más tablas se juntan en una sentencia SQL.
Existen más tipos de joins en SQL que los que aquí se explican, como CROSS JOIN, O SELF JOIN, pero no todos ellos están soportados por todos los sistemas de bases de datos. Los más importantes son los siguientes:
  1. INNER JOIN: Devuelve todas las filas cuando hay al menos una coincidencia en ambas tablas.
  2. LEFT JOIN: Devuelve todas las filas de la tabla de la izquierda, y las filas coincidentes de la tabla de la derecha.
  3. RIGHT JOIN: Devuelve todas las filas de la tabla de la derecha, y las filas coincidentes de la tabla de la izquierda.
  4. OUTER JOIN: Devuelve todas las filas de las dos tablas, la izquierda y la derecha. También se llama FULL OUTER JOIN.

ingel 07-07-2022 19:08:09

Gracias !!
 
Gracias a ambos por su tiempo y la ayuda. Pude reescribir la Consulta y funciono !!
sds


La franja horaria es GMT +2. Ahora son las 01:48:52.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi