Подтвердить что ты не робот

Как выбрать из MySQL, где имя таблицы Variable

У меня есть случай, когда получение имени таблицы должно быть из переменной набора, например:

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

но делая так MySQL вывод и ошибку, так может кто-то указать мне, как я могу достичь этого, потому что это мои малые шаги в MySQL

4b9b3361

Ответ 1

Вам нужно сделать это с помощью подготовленного заявления. Что-то вроде:

SET @s = CONCAT('select * from ', @Cat, ' where ID = ', @ID_1); 

PREPARE stmt1 FROM @s; 
EXECUTE stmt1; 
DEALLOCATE PREPARE stmt1;