Foros del Web » Programando para Internet » PHP »

consulta mysql y obterner solo valores asociados a otros

Estas en el tema de consulta mysql y obterner solo valores asociados a otros en el foro de PHP en Foros del Web. Hola tengo una tabla con los siguientes campos: mes, dia, año, valor necesito obtener el valor del campo "valor" que corresponda al valor del campo ...
  #1 (permalink)  
Antiguo 29/07/2005, 19:15
Avatar de jesusalain  
Fecha de Ingreso: julio-2005
Ubicación: Cienfuegos, Cuba
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
consulta mysql y obterner solo valores asociados a otros

Hola tengo una tabla con los siguientes campos:
mes, dia, año, valor

necesito obtener el valor del campo "valor" que corresponda al valor del campo "dia", ejemplo:

mes dia valor
---- --- -----
6 1 34
6 3 56
7 4 67
7 6 78

necesito saber, ejemplo:
para 34 - a que dia corresponde
para 56 - a que dia corresponde
para 67 - a que dia corresponde
etc...
Ayudenme por favor
  #2 (permalink)  
Antiguo 29/07/2005, 23:36
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 18 años, 10 meses
Puntos: 2
Hola, no te has explicado muy bien pero por lo poco que entendí creo que usas base de datos, eso lo tendrias que hacer con una consulta sql, con la misma consulta traes el dato que necesitas... por ejemplo
Código:
SELECT valor, dia FROM mi_tabla WHERE valor = 56
No estoy seguro que sea exactamente así la consulta sql (es que no me agrada sql ) pero con la consulta teoricamente tendria que traer los dos datos el del compo valor que es 56 y al dia que corresposde en este caso 6... bueno espero que me entiendas, dime si entendi bien y sino ni modo te tocara explicarte mejorcito . Saludos.
  #3 (permalink)  
Antiguo 30/07/2005, 11:04
Avatar de jesusalain  
Fecha de Ingreso: julio-2005
Ubicación: Cienfuegos, Cuba
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
Cita:
Iniciado por DarioDario
Hola, no te has explicado muy bien pero por lo poco que entendí creo que usas base de datos, eso lo tendrias que hacer con una consulta sql, con la misma consulta traes el dato que necesitas... por ejemplo
Código:
SELECT valor, dia FROM mi_tabla WHERE valor = 56
No estoy seguro que sea exactamente así la consulta sql (es que no me agrada sql ) pero con la consulta teoricamente tendria que traer los dos datos el del compo valor que es 56 y al dia que corresposde en este caso 6... bueno espero que me entiendas, dime si entendi bien y sino ni modo te tocara explicarte mejorcito . Saludos.
si pero esa consulta me servirá para obtener un solo valor deacuerdo a un dia especifico, para lo que yo necesito, tendría que realizar 31 consultas para saber el valor para cada dia, ¿existe alguna otra vía menos engorosa?

gracias
  #4 (permalink)  
Antiguo 30/07/2005, 11:39
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 18 años, 10 meses
Puntos: 2
Podrias hacer un bucle haciendo la consulta con cada dato del 1 al 30, pero esto no es nada recomendable, lo que te diria es que averigues sobre las consultas y hacer tipo un bucle en la consulta sql si es que se puede.... tambien podrias hacerlo con la intruccion BEETWHEN (creo que se escribe asi) de todas formas averigua que seguro que lo encuentras, yo buscare si encuentro algo util, posteo. Saludos.
  #5 (permalink)  
Antiguo 30/07/2005, 11:46
Avatar de jesusalain  
Fecha de Ingreso: julio-2005
Ubicación: Cienfuegos, Cuba
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
No se puede hacer bucles en consultas

Yo he buscado bastante informacion de mysql pero no h encontrado nada que me diga de como hacer bucles en una consulta, de todas formas gracias amigo, sequiré buscando. con BETWEEN puedo consultar por datos que se encuentre dentro de un rango pero a la hora de mostralos para cada dia es donde no sé
__________________
syron :cool:

Última edición por jesusalain; 30/07/2005 a las 11:49 Razón: mas informacion
  #6 (permalink)  
Antiguo 30/07/2005, 12:02
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 18 años, 10 meses
Puntos: 2
De todas formas tienes 2 caminos, con codigo php (menos recomendable, en realidad no es recomendable para nada, pero a veces te salva bastante ) y la de la consulta sql, que es mas eficiente y mucho mejor. Ahora lo que tu quieres no tengo ni la mas minima idea, asique espera a algun especialista en SQL, o tambien puedes postear en el foro de Base de Datos que ahi te podran orientar un poco más. Saludos.

----- EDITADO ----------

De todas formas cuando consigas la solución posteala asi el thread sirve a otras personas.
  #7 (permalink)  
Antiguo 31/07/2005, 06:07
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Cita:
Iniciado por jesusalain
no h encontrado nada que me diga de como hacer bucles en una consulta
Los bucles lo haces con PHP, la consulta dentro:
Código PHP:
for($i=0$i<5$i++) // 5 bucles
     
$busquedamysql_query("SELECT campos FROM tabla WHERE campo='valor'"); // 5 consultas 
... pero hacer en sí es un error... Igual que DarioDario no me quedó claro...
Cita:
Iniciado por jesusalain
necesito saber, ejemplo:
para 34 - a que dia corresponde
para 56 - a que dia corresponde
para 67 - a que dia corresponde
etc...
Con la sentencia que te dejó DarioDario consultas un campo y extraes TODOS los valores donde hubo coincidencia... así pués: si tienes:
Código:
campo1   | campo2
   12           1
   23           2
   34           1
   34           1
y sí haces
Código:
SELECT campo1 FROM tabla WHERE campo2=1
te regresará 12, 34 y 34 . Si haces
Código:
SELECT campo2 FROM tabla WHERE campo1=34
te regresará 1 y 1. Si haces
Código:
SELECT campo1 FROM tabla WHERE campo2=2
solo te regresará 23 ... y
Código:
SELECT * FROM tabla
te regresará toda tu tabla simples casos que planteo... la cuestión es que no es necesario consultar campo por campo... y si no es eso lo que quieres hacer... explicate mejor (quizá el trabajo sea de PHP)...

Si no sabes trabajar con SQL te recomiendo www.mysql-hispano.org , las FAQ del foro de DB y en este foro hay una FAQ de cómo trabajar MySQL+PHP...

Si tienes problemas mencionalos... Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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 16:17.