Foros del Web » Programación para mayores de 30 ;) » .NET »

Comparar las filas de dos tablas diferentes

Estas en el tema de Comparar las filas de dos tablas diferentes en el foro de .NET en Foros del Web. Hola amigos del foro lo que yo quiero hacer y no se me ocurre como es comparar las filas de dos tablas diferentes de SQL ...
  #1 (permalink)  
Antiguo 05/12/2006, 10:40
 
Fecha de Ingreso: octubre-2006
Mensajes: 86
Antigüedad: 17 años, 7 meses
Puntos: 1
Exclamación Comparar las filas de dos tablas diferentes

Hola amigos del foro lo que yo quiero hacer y no se me ocurre como es comparar las filas de dos tablas diferentes de SQL en C# POR EJEMPLO

... TABLA 1 .................. TABLA2
---FILA 1--- --------> ---FILA 1---
---FILA 2--- --------> ---FILA 2---
---FILA 3--- --------> ---FILA 3---
---FILA 4--- --------> ---FILA 4---

ALGO ASI CON EL FIN DE SABER SI
LA FILA 1 DE LA TABLA 1 ES IGUAL A LA FILA 1 DE LA TABLA 2
LA FILA 2 DE LA TABLA 1 ES IGUAL A LA FILA 2 DE LA TABLA 2
Y ASI HASTA LA ULTIMA FILA DE CADA TABLA
  #2 (permalink)  
Antiguo 05/12/2006, 11:20
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 10 meses
Puntos: 50
esta un poco complicado, ya que debed de tener el mismo numero de filas y columnas en ambas tablas, el procedimiento que te doy no es el mas optimo ya que en lo que comparas todas las dos tablas pues te da chance hasta de irte de fiesta; puedes obtener la informacion de la primer tabla y guardarla en un datagrid o en un array bidimensional, despues obtener los datos de la tabla 2 e irlos comparando: if(tabla1[0,0].Equals(tabla2[0,0])){es igual}else{no es igual}, pero te digo el rendimiento seria muy lento
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.

Última edición por erick_arcini; 05/12/2006 a las 11:21 Razón: la cajetie
  #3 (permalink)  
Antiguo 05/12/2006, 11:36
 
Fecha de Ingreso: octubre-2006
Mensajes: 86
Antigüedad: 17 años, 7 meses
Puntos: 1
Gracias por tu ayuda fijate que si el numero de filas siempre va ha ser el mismo y estaba pensando en tu idea del datagrid no seria mas facil volcar las dos tablas en 2 datagrid y asi poder comparar los datgrid fila por fila pero no se me ocurre como comparar los datagrid te agradeceria si me das una idea de como hacerlo
  #4 (permalink)  
Antiguo 05/12/2006, 13:57
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 10 meses
Puntos: 50
prueba este codigo:

donde:

dgvXML -> es un datagrid donde insertaras tus primeros datos
dgvXML2 -> es un datagrid donde insertaras tus segundos datos
listBox1 -> esta es una lista que pongo para saber cuales son repetidos y cuales no

el for que contiene a x es el for para las columnas
el for que contiene a y es el for para las filas
recorre primero por fila y despues por columna (rows-columns)
si el value es null entonces te va a mandar error, es por eso que puse un if

for (int x = 0; x <= dgvXML.Columns.Count - 1; x++)
{
for (int y = 0; y <= dgvXML.Rows.Count - 1; y++)
{
if (dgvXML.Rows[y].Cells[x].Value != null)
{
if (dgvXML.Rows[y].Cells[x].Value.ToString().Equals(dgvXML2.Rows[y].Cells[x].Value.ToString()))
{
listBox1.Items.Add("tiene el mismo dato");
}
else
{
listBox1.Items.Add("no tiene el mismo dato");
}
}
}
}
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #5 (permalink)  
Antiguo 05/12/2006, 14:01
 
Fecha de Ingreso: octubre-2006
Mensajes: 86
Antigüedad: 17 años, 7 meses
Puntos: 1
me funciono muchas gracias
  #6 (permalink)  
Antiguo 07/12/2006, 10:46
Avatar de .seb  
Fecha de Ingreso: marzo-2006
Ubicación: Uruguay
Mensajes: 493
Antigüedad: 18 años, 1 mes
Puntos: 1
Re: Comparar las filas de dos tablas diferentes

No es mas performante utilizar un DataTable?
Iternado sobre sus DataRows y a estas compararlas con las de la otra?
__________________
saludos
seba
http://sgomez.blogspot.com
  #7 (permalink)  
Antiguo 07/12/2006, 11:49
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 10 meses
Puntos: 50
Re: Comparar las filas de dos tablas diferentes

pero con el dataTable, tambien lee el contenido por celdas?
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:49.