J'ai un cas où obtenir le nom de la table doit 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 procédant de cette façon, MySQL génère une erreur, donc quelqu'un pourrait-il me montrer comment je peux y parvenir, car ce sont mes premiers pas dans MySQL.
Vous devez le faire avec un 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;