Foros del Web » Programando para Internet » PHP »

Consulta MySQL en php, buscando un id de una tabla en una columna de otra con Arrays

Estas en el tema de Consulta MySQL en php, buscando un id de una tabla en una columna de otra con Arrays en el foro de PHP en Foros del Web. Hola, me encuentro que normalmente hago consultas buscando un id de una tabla en otra tabla que solo contiene ese id, para relacionar informaciones. Pero ...
  #1 (permalink)  
Antiguo 28/01/2008, 06:06
 
Fecha de Ingreso: enero-2008
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Consulta MySQL en php, buscando un id de una tabla en una columna de otra con Arrays

Hola, me encuentro que normalmente hago consultas buscando un id de una tabla en otra tabla que solo contiene ese id, para relacionar informaciones.

Pero ahora tengo una tabla en la que guardo en una columna VARCHAR un array, bueno un String del tipo 32,45,4,6,7

Y en otra tabla tengo unas ids,

Existe algun tipo de consulta que busque directamente en el array?

Es decir en vez de lo tipico:
"SELECT * FROM tabla1 INNER JOIN tabla2 ON tabla1.id=tabla2.id

Ya que el id de la tabla2 no es un número sino un array que puede contener ese id o no.

Gracias, de antemano, no doy con la solución.
  #2 (permalink)  
Antiguo 28/01/2008, 07:37
 
Fecha de Ingreso: enero-2008
Mensajes: 19
Antigüedad: 12 años, 1 mes
Puntos: 0
De acuerdo Re: Consulta MySQL en php, buscando un id de una tabla en una columna de otra con Arr

Hi !

Estoy practicamente seguro que no existe una consulta exactamente para buscar en un array... Pero puedes hacerlo de esta forma :

Código PHP:
<?php
    
    
include_once("conexion.php");
    
    
// Ejecutamos una consulta y almacenamos el resultado en un 
    // array.
    
$SQL "SELECT columna_con_array FROM columnas";
    
$query mysql_query($SQL$conexion);
    
$fila mysql_fetch_array($query);
    
    
// Con lo siguiente tomaras el resultado y lo separaras segun
    // las comas, es importante que los numeros se coloquen de esta manera
    // 1,2,3,4,5 <- Sin espacios, porque podria dar error.
    
$arreglo explode(","$fila["columna_con_array"]);
    
    
$SQL_BUSCANDO "SELECT busqueda FROM busquedas_general";
    
$query_b mysql_query($SQL_BUSCANDO$conexion);
    
    while (
$reg mysql_fetch_array($query_b)) {
        if (
in_array($reg["busqueda"], $arreglo) {
            
// Si está en el Array que pase lo que desees.
        
}
    }

?>
Es la unica manera que se me ocurre, y eso lo podrias hacer una función perfectamente =D. Espero te sea util!

-ByE-
  #3 (permalink)  
Antiguo 28/01/2008, 10:21
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: Consulta MySQL en php, buscando un id de una tabla en una columna de otra con Arr

Puedes usar LIKE para checar si esta el valor:
Código:
SELECT * FROM tabla WHERE codigo LIKE '%id%'
.
Saludos.
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:27.