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

Ayuda con consulta...

Estas en el tema de Ayuda con consulta... en el foro de Mysql en Foros del Web. Hola... necesito de su ayuda...necesito un metodo o una consulta para encontrar un numero cualquiera dentro de una serie de registros, por ejemplo... Código PHP: ...
  #1 (permalink)  
Antiguo 07/03/2011, 20:11
 
Fecha de Ingreso: enero-2009
Mensajes: 106
Antigüedad: 15 años, 3 meses
Puntos: 0
Pregunta Ayuda con consulta...

Hola...

necesito de su ayuda...necesito un metodo o una consulta para encontrar un numero cualquiera dentro de una serie de registros, por ejemplo...

Código PHP:
<?php
       
include("../cnn.php");
       
$sql mysql_query("Select * FROM sucursal WHERE id_departamento in ($restriccion) ORDER BY id_sucursal",$link);
       while(
$row1 mysql_fetch_array($sql)) 
       {
         echo 
"<option value='$row1[0]'>$row1[2]</option>";
       }
        
mysql_close($link);    
                
?>
id_sucursal
15
16

cod_area
6
7

str_nombre
Temuco
Los Angeles

id_departamento
1,100,550,650,700,710,1000,1200,9999
1,100,550,650,700,1000,1200,9999

en este caso y como ejemplo $restriccion es 1200 pero pueden ser dos o mas numeros, el problema es que no lo encuentr, encuentra solamente el primer valor que es 1. Si a $restriccion le asigno el valor 1 funciona.
  #2 (permalink)  
Antiguo 08/03/2011, 14:11
 
Fecha de Ingreso: enero-2009
Mensajes: 106
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Ayuda con consulta...

nadie sabe...o no me explique bien???
  #3 (permalink)  
Antiguo 08/03/2011, 15:13
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Ayuda con consulta...

Sácame una duda: ¿En un registro de la tabla, el campo id_departamento, contiene "1,100,550,650,700,1000,1200,9999"? Es decir, ¿contiene todos esos valores separados por comas? ¿Es así como lo has hecho?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 08/03/2011, 20:47
 
Fecha de Ingreso: enero-2009
Mensajes: 106
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Ayuda con consulta...

si, correcto.
  #5 (permalink)  
Antiguo 08/03/2011, 20:50
 
Fecha de Ingreso: marzo-2011
Mensajes: 2
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Ayuda con consulta...

Buenas noches.

Soy nuevo en esto y la verdad no se como utilizarlo pero tengo una duda muy urgente sobre java y queria saber si alguien me puede ayudar?

El problema es que quiero que el usuario ingrese la fecha de nacimiento y que la reste con la fecha actual, pero yo quiero utilizar el codigo que java proporciona para mostrar la fecha pero no se como alguien sabe?

Gracias.
  #6 (permalink)  
Antiguo 09/03/2011, 05:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Ayuda con consulta...

Cita:
Iniciado por tomuer01 Ver Mensaje
si, correcto.
Bueno, el primer problema que tienes en realidad es que has creado lo que parece ser un a relación N:M ente Sucursal y Departamento, creando un campo multivaluado (varios valores del mismo dominio en el mimo campo del mismo registro).
Eso puede parecer una buena idea a los programadores, pero es una violación al modelo relacional y un error enorme y peligroso para una base de datos. Poner un campo multivaluado haría que reprobaras el examen de BBDD en cualquier universidad. Esetipo de campos genera problemas de consulta (como la tuya) y también problemas de consistencia e integridad de datos.

Tiene dos soluciones para tu caso: 1) Poner ese campo como debe ser en una base de datos relacional y 2) Seguir trabajando con él así como está, pudiendo eventualmente tener serios problemas de integridad en la base de datos (no digo que puedes tenerlos, los vas a tener; es cuestión de tiempo).

En el primer caso, la relación N:M entre dos entidades o dos ytablas se expresa siempre con una tabla adicional, donde se ponen como PK las PK correspondientes a cada tabla. En tu caso esa tabla tendría la PK de sucursal y la PK de departamento, apareciendo un registro por cada par combinado de ambos:
Tabla SUCURSAL_DEPARTAMENTO(id_sucursal, id_departamento)
En este caso la consulta debería ser casi igual a como la pusiste:
Código MySQL:
Ver original
  1. SELECT S.*
  2. FROM sucursal S INNER JOIN sucursal_departamento SD ON S.id_sucursal = SD.id_sucursal
  3. WHERE SD.id_departamento  = $restriccion
  4. ORDER BY id_sucursal;

En el segundo caso, hay una función que puede hacer lo que tu quieres:
Código MySQL:
Ver original
  1. FROM sucursal
  2. WHERE FIND_IN_SET($restriccion, id_departamento)>0
  3. ORDER BY id_sucursal;
Esta solución te puede hacer salir del paso, y puede parecer una buena idea, pero te remarco que la tabla, tal y como la tienes, te traerá problemas en el futuro.
Te conviene remodelar la base y respetar el modelo entidad - relación. Por algo se inventó.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 09/03/2011 a las 05:25

Etiquetas: Ninguno
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 00:11.