Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/12/2010, 07:33
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Problema para sacar mínimo valor con varias condiciones

La ultima condición lo rompe todo y te sobra limit 1, esto último no hace daño,

Tienes

WHERE (a y b) OR (a y c y d) AND e

Eso tiene en cuenta los que cumplen ayb o los que cumplen aycyd y e, estoy suponiendo que e lo deben cumplir todos.

Código SQL:
Ver original
  1. SELECT MIN(precio) AS precio
  2. FROM precios
  3. WHERE ((id_curso=id
  4.               AND tipoconfiguracion='1'
  5.               AND visible='1')
  6. OR ( id_articulo=id AND tipoconfiguracion='0'
  7.         AND fechaini>'hoy'
  8.         AND visible='1'))

WHERE ((a y b y e) OR (a y c y d y e))

Uy de donde sale id_articulo

Si en la tabla precios hay varios precios para un mismo id (y id_articulo era un error) luego funcionara o esta otra, la primera parece más "compacta"....

Código SQL:
Ver original
  1. SELECT MIN(preciomin) AS precio_minimo
  2. FROM
  3. (SELECT MIN(precio) AS preciomin
  4. FROM precios
  5. WHERE id_curso=id AND tipoconfiguracion=1 AND visible=1
  6. UNION ALL
  7. SELECT MIN(precio) AS preciomin
  8. FROM precios
  9. WHERE id_curso=id AND tipoconfiguracion=0 AND fechaini>'hoy' AND visible=1)

$hoy tiene el formato YYYY-mm-dd, no? y los apostrofes alrededor de la fecha otro error? ...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 29/12/2010 a las 08:07