sql >> Database >  >> RDS >> Mysql

Dynamisch alias toewijzen aan alle veldnamen in msyql-query

U zou het information_schema . moeten opvragen om de kolomnamen van die twee tabellen te krijgen. Laten we aannemen dat u de cd . zou hebben kolomnamen opgeslagen in de array $cd_columns en de cd_n kolomnamen in de array $cdn_columns .

Loop dan in PHP bij het maken van de query door de kolomarrays en doe zoiets als dit:

$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 ...';

Was dit nuttig?




  1. SQL-query om geaggregeerd resultaat te krijgen in kommascheidingstekens samen met groep voor kolom in SQL Server

  2. Hoe SQL Server-database exporteren naar MySQL?

  3. CLR strikte beveiliging op SQL Server 2017

  4. Hoe voer je een opgeslagen procedure uit in Oracle SQL Developer?