Buenas tenia la necesidad de juntar un comando sql si cierta condiciones se queria ( en un reporte)
Ejemplo : Tengo un comando sql del tipo : SELECT * FROM table1 WHERE fecha between fec1 and fec2
Luego en formulario de reporte hay varias opciones que el usuario puede solicitar si por ejemplo quiere los tipos de comprobantes que solo sean Facturas, hablando en el ambito financiero.
Asi nuestro comando sql puede quedar asi:SELECT * FROM table1 WHERE fecha between fec1 and fec2 and tipo= 'F'
Esta consulta es muy secilla de realizar , juntaondo primero el comando que deseamos ejecutar, mendiante if condicionales. Pero pensaba en la forma de llevar por lo menos el primer comando basico a un stored procedure y luego las condiciones extras concatenar y luego ejecutar. Por ello buscando en google me encontrre con prepared statements
Ejemplo : Tengo un comando sql del tipo : SELECT * FROM table1 WHERE fecha between fec1 and fec2
Luego en formulario de reporte hay varias opciones que el usuario puede solicitar si por ejemplo quiere los tipos de comprobantes que solo sean Facturas, hablando en el ambito financiero.
Asi nuestro comando sql puede quedar asi:SELECT * FROM table1 WHERE fecha between fec1 and fec2 and tipo= 'F'
Esta consulta es muy secilla de realizar , juntaondo primero el comando que deseamos ejecutar, mendiante if condicionales. Pero pensaba en la forma de llevar por lo menos el primer comando basico a un stored procedure y luego las condiciones extras concatenar y luego ejecutar. Por ello buscando en google me encontrre con prepared statements
SET @query = CONCAT('SELECT * FROM table1 WHERE column1 LIKE ''', expression, '%''');
PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
Saludos
Adalberto Montanía
Fuente:http://stackoverflow.com/questions/18873224/concatening-like-with-stored-procedures-parameter-using-mysql
Comentarios
Publicar un comentario