Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Consulta básica de INNER JOIN

Estas en el tema de Consulta básica de INNER JOIN en el foro de Mysql en Foros del Web. No hay manera y me estoy volviendo loco $sqly = "SELECT articulos.*,empresas.cod_usu FROM articulos INNER JOIN empresas ON articulos.cod_empresa = empresas.cod_empresa"; Este select no arroja ...
  #1 (permalink)  
Antiguo 21/06/2012, 01:35
Avatar de intergus  
Fecha de Ingreso: mayo-2007
Mensajes: 126
Antigüedad: 16 años, 11 meses
Puntos: 3
Consulta básica de INNER JOIN

No hay manera y me estoy volviendo loco

$sqly = "SELECT articulos.*,empresas.cod_usu FROM articulos INNER JOIN empresas ON articulos.cod_empresa = empresas.cod_empresa";

Este select no arroja resultados.
En ambas tablas está el campo cod_empresa y con la misma estructura varchar de 10 y el contenido, en los que coincide es idéntico

Quiero que saque todos los datos de la tabla artículos, siempre y cuando tenga al menos un registro en la tabla empresas, cuyo campo cod_empresa coincida con el campo cod_empresa de artículos.

Ej:
en tabla empresa:
0111 empresaA Madrid mas campos...
0444 empresaB Valencia mas campos...
0555 empresaC Madrid mas campos...

En tabla articulos
0111 ArticuloUno
0444 ArticuloDos
0111 ArticuloTres
0444 ArticuloCuatro
0666 ArticuloCinco
0111 ArticuloSeis

Quiero que el resultado sea:
0111 ArticuloUno EmpresaA
0444 ArticuloDos EmpresaB
0111 ArticuloTres EmpresaA
0444 ArticuloCuatro EmpresaB
0111 ArticuloSeis EmpresaA

Realmente luego ademas filtro para que no salgan los de todas las empresas, sino los articulos cuyas empresas asociadas sean de Madrid, pero eso será ampliar un poco más la consulta metiendo otro AND empresas.ciudad = 'Madrid' (un condicionante más).

Al menos ahora necesito que me funcione la primera consulta, y ¡¡¡ NO LO HACE....... !!!

No hay manera y no se a que se debe

Última edición por intergus; 21/06/2012 a las 02:48 Razón: para aclararlo más
  #2 (permalink)  
Antiguo 21/06/2012, 03:09
Avatar de intergus  
Fecha de Ingreso: mayo-2007
Mensajes: 126
Antigüedad: 16 años, 11 meses
Puntos: 3
Respuesta: Consulta básica de INNER JOIN

Ok

Ya me respondo yo mismo.

Para novatos como yo. Es bueno acudir al phpmyadmin y poner la consulta. Con eso vi que arrojaba un error de cotejamiento de los campos que comparaba en ambas tablas. Ern identicos y coincidentes pero uno tenía como cotejamiento latin1_general_ci y el otro latin1_spanish_ci una diferencia a priori insignificante pero que al parecer impide comparar campos, al menos con el "inner join ... on"

Etiquetas: join, registros, select, sql, tabla, campos
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 22:30.