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

select para multiples registros con condición

Estas en el tema de select para multiples registros con condición en el foro de Mysql en Foros del Web. como seria la consulta si lo que quiero es seleccionar registros con diferentes valores pero con los mismos parámetros; de la forma simple seria así ...
  #1 (permalink)  
Antiguo 20/08/2014, 17:10
Avatar de lileto09  
Fecha de Ingreso: agosto-2014
Mensajes: 3
Antigüedad: 9 años, 8 meses
Puntos: 0
select para multiples registros con condición

como seria la consulta si lo que quiero es seleccionar registros con diferentes valores pero con los mismos parámetros; de la forma simple seria así (hacer la consulta n veces):

Código SQL:
Ver original
  1. SELECT `model`, `total_1` FROM `pro` WHERE `model`= '$model'
  2. SELECT `model`, `total_2` FROM `pro` WHERE `model`= '$model'
  3. SELECT `model`, `total_3` FROM `pro` WHERE `model`= '$model'
  4. SELECT `model`, `total_4` FROM `pro` WHERE `model`= '$model'


Tanto los total_n como los $model son diferentes, se puede hacer una consulta con estos parámetros, sin tener que hacerlas por separado como las anteriores. Como los insert de múltiples registros, quizás haya algo similar para los select que no he encontrado todavía.
Código SQL:
Ver original
  1. INSERT INTO tabla (campo1, campo2, campo3) VALUES
  2. (v1_1, v1_2, v1_3),
  3. (v2_1, v2_2, v2_3),
  4. (v3_1, v3_2, v3_3);

Espero alguien pueda ayudarme. De antemano gracias y excelente dia

Última edición por gnzsoloyo; 21/08/2014 a las 06:59
  #2 (permalink)  
Antiguo 21/08/2014, 05:01
Avatar de toledo_nocturno  
Fecha de Ingreso: agosto-2011
Ubicación: Under the northen star
Mensajes: 86
Antigüedad: 12 años, 8 meses
Puntos: 5
Respuesta: select para multiples registros con condicion

Imaginando que tienes una tabla mas o menos así:
(campo1, campo2, campo3)
(v1_1, v1_2, v1_3),
(v2_1, v2_2, v2_3),
(v3_1, v3_2, v3_3);

Yo haría:
Código SQL:
Ver original
  1. SELECT campo1, campo2, campo3
  2. FROM tabla WHERE campo1='v1_1' OR campo1='v2_1' OR campo1='v3_1'

Añadiendo condiciones en la cláusula WHERE para no lanzar 70 consultas y que de una te devuelva los resultados.
__________________
diseño web | Clan Rol

Última edición por gnzsoloyo; 21/08/2014 a las 07:00
  #3 (permalink)  
Antiguo 21/08/2014, 08:53
Avatar de lileto09  
Fecha de Ingreso: agosto-2014
Mensajes: 3
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: select para multiples registros con condicion

Quizas no me explique bien anteriormente.
Ejemplo:
(campo1, campo2, campo3)
(v1_1, v1_2, v1_3),
(v2_1, v2_2, v2_3),
(v3_1, v3_2, v3_3);

a lo anterior le faltaria una columna quedando asi:
(campox,campo1, campo2, campo3)
(vx_1,v1_1, v1_2, v1_3),
(vx_1, v2_2, v2_3),
(vx_1, v3_2, v3_3);

El campox siempre sera constante, pero los demás campos no (esto sera variable dependiendo lo que el usuario pida), en una entrada puedo tener campox ycampo1 o campox y campo2. Como mencione anteriormente la consulta simple seria asi(teniendo en cuenta que total_x puede variar):
SELECT `model`, `total_x` FROM `pro` WHERE `model`= '$model'

Pero mi problema es que no solo es un modelo, son varios y cada uno puede tener diferente `total_x`

Por el momento creo tener la mitad de la respuesta a esto, llevo esto:
select modelo,total_x from pro where modelo IN ('LW', 'MD', 'SM', 'TKK', 'TK');

Última edición por lileto09; 21/08/2014 a las 09:02
  #4 (permalink)  
Antiguo 21/08/2014, 14:13
Avatar de toledo_nocturno  
Fecha de Ingreso: agosto-2011
Ubicación: Under the northen star
Mensajes: 86
Antigüedad: 12 años, 8 meses
Puntos: 5
Respuesta: select para multiples registros con condicion

Ah, entonces es un tema diferente, aunque me cuesta imaginarme la solución porque no entiendo completamente lo que buscas, independientemente de cómo lo estemos encontrando ahora.

¿Podrías ampliarnos un poco la funcionalidad que necesitas, en qué casos buscas esos datos? A ver si se nos ocurre algo.

Un saludo!
__________________
diseño web | Clan Rol
  #5 (permalink)  
Antiguo 23/08/2014, 09:49
Avatar de lileto09  
Fecha de Ingreso: agosto-2014
Mensajes: 3
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: select para multiples registros con condicion

tengo n numeros de cajas de texto en donde el usuario indica tal modelo; ese modelo esta clasificado en x,y,z
La estructura de la tabla seria asi:
modelo--- x---- y----z
abc123--- 12--- 23--- 26
abc456--- 5--- 2--- 0

las x,y,z indica la cantidad de ese modelo en esa clasificacion.

Entonces lo que quiero hacer es saber si el modelo abc123 tiene existencias en x (si es que x es lo que pide el usuario)

El usuario enviaria:
------- x---y---z
abc123 -*
abc456 ----*
abc789 ----*
abc111 --------*
  #6 (permalink)  
Antiguo 24/08/2014, 02:40
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: select para multiples registros con condición

Creo que para eso necesitas o varias consultas o usar union y las variables para hacer algo parecido a esto:
Código MySQL:
Ver original
  1. (SELECT model, 'abc123' modelo, abc123 cantidad FROM `pro` WHERE model = 'x')
  2. (SELECT model, 'abc456', abc456 FROM pro WHERE model = 'y')

Observa que uso la variable del modelo buscado dos veces, una como nombre de campo y otra como valor que paso. Habría que añadir un elemento UNION por cada petición del cliente. Te será fácil con programación armar una consulta dinámica de este tipo de acuerdo con las peticiones del cliente.

Última edición por jurena; 24/08/2014 a las 07:25

Etiquetas: select
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 08:38.