sql >> Database >  >> RDS >> Mysql

Op MySQL opgeslagen functies - Dynamische/variabele tabel- en kolomnamen

Gebruik hiervoor User/Global Vars samen met 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;

Heb deze EXACTE code niet getest, maar iets in deze richting zal werken. Moet ook in een Procedure zijn, kan niet worden gebruikt met een functie of trigger, als iemand daar een oplossing voor heeft, post het dan.




  1. Mysql-overeenkomst...tegen vs. eenvoudig zoals %term%

  2. Kan tekenreekswaarde 1,2 niet doorgeven als invoer voor een orakel-query

  3. Configuratie voor transactiereplicatie van SQL Server

  4. Hoe weet ik wanneer een MySQL-tabel voor het laatst is bijgewerkt?