Comment sélectionner à partir de MySQL où Nom de la table est variable

J’ai un cas où obtenir le nom de la table devrait provenir d’une variable définie comme:

SET @ID_1 = (SELECT ID FROM `slider` LIMIT 0,1); SET @Cat = (SELECT Category FROM `slider` LIMIT 0,1); select * from @Cat where ID = @ID_1 

mais en faisant cela, MySQL génère une erreur, alors quelqu’un pourrait me montrer comment je peux y arriver, car ce sont mes petits pas dans MySQL.

Vous devrez le faire avec une déclaration préparée . Quelque chose comme:

 SET @s = CONCAT('select * from ', @Cat, ' where ID = ', @ID_1); PREPARE stmt1 FROM @s; EXECUTE stmt1; DEALLOCATE PREPARE stmt1;