MySQL - Como mostrar los datos que no coinciden al comparar 2 tablas en mysql

 
Vista:
sin imagen de perfil

Como mostrar los datos que no coinciden al comparar 2 tablas en mysql

Publicado por vons (1 intervención) el 03/03/2017 17:39:35
Hola, estoy intentando hacer la comparación de 2 tablas de una base de datos, pero no me sale la comparacion intente hacer unos while pero no me funcion, es mas el contador que puse para saber si me decia cuantas materias no coinciden me da como resultado 1.


Espero me puedan ayudar:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php
$con=mysqli_connect('localhost','root','12345','control_escolar');
// checa la onexion
if (mysqli_connect_errno())
  {
  echo "Falló al conectar con MySQL: " . mysqli_connect_error();
  }
  else
  {
    //cuenta cuantas materias ya curso
    $query_cuenta= mysqli_query($con,"Select count(id_mat)from calificacion where id_pol='AQHA890101M214768515'");
 
    //selecciona las materias ya cursadas
    $query_cursadas= mysqli_query($con,"Select id_mat from calificacion where id_pol='AQHA890101M214768515' order by id_mat asc");
 
    //consulta la tabla de materias
    $query_materias= mysqli_query($con, "Select id_mat from materia order by id_mat asc");
 
 
   //se inicializa el contador para que cuente cuantas materias faltan
    $cuenta= 0;
 
   //buscar en todos los resultados del select
    while($row0 = mysqli_fetch_array($query_materias))
    {
      //se activa el segundo select
      while ($row1= mysqli_fetch_array($query_cursadas))
      {
 
              if($row0['id_mat'] == $row1['id_mat'])
                {
                  $cuenta++;
                  //echo "<table border = '2' bgcolor='white' BORDERCOLOR='#004a79' CELLPADDING='7' CELLSPACING='0' VALIGN='top'> ";
                  //echo "<tr> \n";
                  //echo " $row0['id_mat'] ";
                  //echo "</tr> \n";    
                }
 
      }
    }
    if ($cuenta >= 0)
    {
      echo "Materias faltantes:   " ;
      echo " $cuenta ";
    }
    else
    {
      echo "sin coincidencias";
    }
 
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 8
Ha aumentado su posición en 9 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Como mostrar los datos que no coinciden al comprar 2 tablas en mysql

Publicado por Alejandro (21 intervenciones) el 04/03/2017 09:49:42
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
Hola Vons, en este caso, lo que haces es sumar las que coinciden entre las tablas calificacion y materia... no se que hay en cada tabla, pero entiendo que estas buscando las coincidencias, no?

Si es así, creo que podrias hacerlo con una consulta SQL.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar