Mysql
 sql >> база данни >  >> RDS >> Mysql

mysql име на поле от променлива

Ако низът е във вашето външно приложение (като PHP), разбира се, просто конструирайте изявлението MySQL.

Ако низът е вътре в MySQL таблица, не можете. MySQL няма eval() или такава функция. Следното е невъзможно:

Да предположим, че имате таблица queries с поле columnname което се отнася до едно от имената на колоните в таблицата mytable . Може да има допълнителни колони в queries които ви позволяват да изберете columnname искате.

INSERT INTO queries  (columname) VALUES ("name")
SELECT (select columnname from queries) from mytable

Можете обаче да работите с ПОДГОТОВЛЕНИ ИЗЯВЛЕНИЯ . Имайте предвид, че това е много хакерско.

SELECT columnname from queries into @colname;
SET @table = 'mytable';
SET @s = CONCAT('SELECT ',@colname,' FROM ', @table);

PREPARE stmt FROM @s;
EXECUTE stmt;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. свържете ECONNREFUSED - възел js, sql

  2. Сортиране по ред на стойностите в оператор select в клауза в mysql

  3. Достъпът до MYSQL във външния файл е отказан - но моят потребител има ЦЯЛ достъп.. и папката е CHMOD 777

  4. MySQL в облака – онлайн миграция от Amazon RDS към EC2 екземпляр:Част първа

  5. Пример за това как да използвате bind_result срещу get_result