Nếu chuỗi nằm trong ứng dụng bên ngoài của bạn (như PHP), chắc chắn, chỉ cần tạo câu lệnh MySQL.
Nếu chuỗi nằm trong bảng MySQL, bạn không thể. MySQL không có eval()
hoặc chức năng đó. Điều sau là không thể:
Giả sử bạn có một bảng queries
với một trường columnname
đề cập đến một trong các tên cột trong bảng mytable
. Có thể có các cột bổ sung trong queries
cho phép bạn chọn columnname
bạn muốn.
INSERT INTO queries (columname) VALUES ("name")
SELECT (select columnname from queries) from mytable
Tuy nhiên, bạn có thể làm việc với BÁO CÁO CHUẨN BỊ . Hãy lưu ý rằng điều này rất khó hiểu.
SELECT columnname from queries into @colname;
SET @table = 'mytable';
SET @s = CONCAT('SELECT ',@colname,' FROM ', @table);
PREPARE stmt FROM @s;
EXECUTE stmt;