sql >> Databasteknik >  >> RDS >> Mysql

MySQL-lagrade funktioner - Dynamiska/variabla tabell- och kolumnnamn

Använd User/Global Vars för detta tillsammans med 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;

Har inte testat den här EXAKTA koden men något i den här stilen kommer att fungera. Måste också vara inne i en procedur, kan inte användas med en funktion eller trigger, om någon har en lösning för det, vänligen posta.




  1. två ord och tomma utrymmen fungerar inte i MYSQL-frågan med LIKE

  2. Vad är makron och hur använder jag dem?

  3. SQLite aggregerade funktioner

  4. Infoga flera rader i en MySQL-databas från en tabell