Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: asdexiva en 15 Septiembre 2019, 05:34 am



Título: problema consulta filtro multiple
Publicado por: asdexiva en 15 Septiembre 2019, 05:34 am
buenas podrian ayudarme con esta consulta

Código
  1. SELECT central.sucursal AS numero, t_sucursales.nombre_suc, central.fecha, central.regalias FROM central INNER JOIN t_sucursales ON central.sucursal = t_sucursales.numerosucursal WHERE(MONTH(central.fecha) = '$mes' AND YEAR(central.fecha) = '$año'" and t_sucursales.numerosucursal = '$numerosucursal' )
  2.  
  3. or MONTH(central.fecha) = '$mes'
  4.  
  5. and YEAR(central.fecha) = '$año'
  6.  
  7. or t_sucursales.numerosucursal = '$numerosucursal'

como podria hacer que por ejemplo si se cumple la primera condicion de mes año y sucursal realize filtro y si no haga la de mes y año o sucursal ,gracias



Mod: Temas sobre Bases de Datos, van al subforo de Base de Datos.


Título: Re: problema consulta filtro multiple
Publicado por: EdePC en 15 Septiembre 2019, 13:30 pm
Saludos,

- Has probado encerrando entre paréntesis en conjunto de sentencias a distinguir:

Código
  1. SELECT
  2.  central.sucursal AS numero,
  3.  t_sucursales.nombre_suc,
  4.  central.fecha,
  5.  central.regalias
  6. FROM
  7.  central
  8.  INNER JOIN t_sucursales ON central.sucursal = t_sucursales.numerosucursal
  9. WHERE
  10.  (
  11.    MONTH(central.fecha) = '$mes'
  12.    AND YEAR(central.fecha) = '$año'
  13.    AND t_sucursales.numerosucursal = '$numerosucursal'
  14.  )
  15.  OR (
  16.    MONTH(central.fecha) = '$mes'
  17.    AND YEAR(central.fecha) = '$año'
  18.    OR t_sucursales.numerosucursal = '$numerosucursal'
  19.  )