Mysql
 sql >> Database >  >> RDS >> Mysql

Assegna dinamicamente l'alias a tutti i nomi di campo nella query msyql

Dovresti interrogare lo information_schema per ottenere i nomi delle colonne di queste due tabelle. Supponiamo che avresti il ​​cd nomi di colonna memorizzati nell'array $cd_columns e il cd_n nomi di colonna nell'array $cdn_columns .

Quindi in PHP durante la creazione del ciclo di query attraverso gli array di colonne e fai qualcosa del genere:

$sql = 'SELECT ';

// add the cd columns
$i = 0;
foreach($cd_columns as $col) {
    $sql .= "{$col} AS CD_Column{$i},";
    $i++;
}

// add the cd_n columns
$i = 0;
foreach($cdn_columns as $col) {
    $sql .= "{$col} AS CN_Column{$i},";
    $i++;
}

// remove the trailing comma
$sql = trim($sql, ',');
// continue the SQL
$sql .= ' FROM ...';

È stato utile?