Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Gespeicherte MySQL-Funktionen – Dynamische/Variablentabellen- und Spaltennamen

Verwenden Sie dazu User/Global Vars zusammen mit PREPARE &EXECUTE:

SET @columnName='myColumn';
SET @tableName='myTable';
SET @whatEver='requiredValue';

SET @query=CONCAT('SELECT ', @columnName, ' FROM ', @tableName, ' WHERE Column=', @whatEver);
PREPARE QUERY FROM @QUERY;
EXECUTE QUERY;

Habe diesen genauen Code nicht getestet, aber etwas in dieser Richtung wird funktionieren. Muss auch innerhalb einer Prozedur sein, kann nicht mit einer Funktion oder einem Trigger verwendet werden, wenn jemand eine Lösung dafür hat, dann bitte posten.