Monday, 12 April 2021

Making dynamic query

 https://stackoverflow.com/questions/8549619/mysql-dynamically-build-query-string-in-a-stored-procedure-based-on-logic



CREATE  PROCEDURE `activate_games_pawan`(IN `gameId` INT(20))

BEGIN   

DECLARE whereCondition varchar(200);

CASE WHEN gameId>0 THEN

   SET @whereCondition =CONCAT(" ","sh_games.game_id=",gameId);

  SELECT @whereCondition;

  ELSE

  SET @whereCondition=1;

    SELECT @whereCondition;

  END CASE;

 SET @query=CONCAT("SELECT * FROM sh_games where ", @whereCondition);

  select @query;

PREPARE stmt FROM @query;

EXECUTE stmt;

DEALLOCATE PREPARE stmt;

END

No comments:

Post a Comment