Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] INNER JOIN no devuelve nada

Estas en el tema de INNER JOIN no devuelve nada en el foro de PHP en Foros del Web. Buenas tardes, En mi codigo estoy realizando un inner join para extraer datos de distintas tablas y en php no me devuelve ni error ni ...
  #1 (permalink)  
Antiguo 29/06/2016, 07:57
 
Fecha de Ingreso: febrero-2015
Mensajes: 55
Antigüedad: 4 años, 9 meses
Puntos: 7
INNER JOIN no devuelve nada

Buenas tardes,

En mi codigo estoy realizando un inner join para extraer datos de distintas tablas y en php no me devuelve ni error ni resultados.
La consulta la realizo en SQL SERVER y me realiza el INNER JOIN correcto.

Pongo el codigo a ver si me pueden ayudar.

Código PHP:
<?php
$servername 
"SERVER";
$connectioninfo = array("Database"=>"DB","UID"=>"USER""PWD"=>"PASS""CharacterSet"=>"UTF-8");
$connect sqlsrv_connect $servername$connectioninfo );
if (
$connect == false){
die ( 
print_r(sqlsrv_errors(), true) );

?>

<?php
    $sql 
"SELECT 
    A.ID,
    A.NOMBRE, 
    A.TLF,
    B.DIRECCION
  FROM DB1            A
  INNER JOIN  DB2   B ON
  A.ID= B.ID"
;
    
$stm sqlsrv_query$connect$sql );
if( 
$stm === false) {
    die( 
print_rsqlsrv_errors(), true) );
}
while( 
$row sqlsrv_fetch_array$stmSQLSRV_FETCH_ASSOC) ) {
    if(
$cont%2==0){ $color='#ebebeb';}else{ $color='#ffffff';}


    
    
$NOMBRE=$row['NOMBRE'];
    
$TLF=$row['TLF'];
    
$DIRECCION=$row['DIRECCION'];



    echo 
"
    <Tr  bgcolor=$color>
    <td bgcolor=#ffffff></td>
    <form action=edit-filial.php method=POST>
    <input type=hidden name=MODIFICAR value=SI>
    <input type=hidden name=CODFILI value=$CODFILI>
    <td>
    <input type=submit value='$BUTTON_CHANGE'>
    </td>
    </form>
    <td nowrap>$NOMBRE</td>
    <td nowrap>$TLF</td>
    <td nowrap>$DIRECCION</td>

    </tr>"
;
}
?>
  #2 (permalink)  
Antiguo 29/06/2016, 09:03
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.321
Antigüedad: 12 años
Puntos: 2653
Respuesta: INNER JOIN no devuelve nada

OK, ¿y el ID de la tabla DB2 es exactamente la foreign key de la tabla DB1?
¿De eso estás totalmente seguro?
Porque si son ID autogenerados independientemente, puede darse que no haya relaciones...

En esencia, INNER JOIN no devuelve datos si no hay una coincidencia exacta entre los valores que relacionan en el ON. ASí de sencillo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 29/06/2016, 09:05
 
Fecha de Ingreso: febrero-2015
Mensajes: 55
Antigüedad: 4 años, 9 meses
Puntos: 7
Respuesta: INNER JOIN no devuelve nada

Buenas tardes gnzsoloyo gracias por contestar.

Estoy totalmente seguro, porque como digo, en SQL SERVER lanzo la misma query y me devuelve la información que yo deseo, pero en PHP no devuelve nada.
  #4 (permalink)  
Antiguo 29/06/2016, 10:13
 
Fecha de Ingreso: febrero-2015
Mensajes: 55
Antigüedad: 4 años, 9 meses
Puntos: 7
Respuesta: INNER JOIN no devuelve nada

Problema de permisos sobre la DB2
Solucionado :)

Etiquetas: devuelve, join, nada, select, sql, tabla
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 21:24.