sql >> Base de Datos >  >> RDS >> Mysql

Condiciones de PHP y MySQL opcionales DONDE

Las otras respuestas son en su mayoría correctas, pero esta es una forma más sencilla de lograr lo que se necesita:

$where = array();


if($A != 'any'){ // or whatever you need
    $where[] = "A = $A'";
}
if($B != 'any'){ // or whatever you need
    $where[] = "B = $B'";
}
if($C != 'any'){ // or whatever you need
    $where[] = "C = $C'";
}

$where_string = implode(' AND ' , $where);

$query = "SELECT * FROM table";

if($where){
    $query .= ' ' . $where_string;
}

Esto permitirá cualquier combinación de condiciones y expansión.