sql >> Base de Datos >  >> RDS >> Mysql

Especificación de alias de columna con variable definida por el usuario

Esto no es posible. Tendría que crear la cadena sql dinámicamente.

C#:

string columnName = "xy";
string sql = "SELECT id AS " + columnName + " FROM table_name";

VB:

Dim columnName As String = "xy"
Dim sql As String = "SELECT id AS " & columnName & " FROM table_name"

También puede hacerlo en un procedimiento almacenado con MySql. Consulte la documentación de MySql para Sintaxis SQL para declaraciones preparadas

Se vería así (no probado):

CREATE PROCEDURE myProc (columnName VARCHAR(30))
BEGIN
SET @sql = CONCAT("SELECT id AS ", columnName, " FROM table_name");
    PREPARE s1 FROM @sql;
    EXECUTE s1;
    DEALLOCATE PREPARE s1;
END$$