是否可以执行查询并获取返回结果集的列名。 我需要列名,因为查询是动态的,我不知道列的名称。
我会在再次执行查询时使用这些列名进行排序。
你可以参考我的Previous question来了解我为什么需要它。
感谢。
答案 0 :(得分:0)
根据正在使用的PDO驱动程序,一旦执行了语句,便可以从PDOStatement::getColumnMeta获取列名。
这是可以在 Yii 1.1 中完成的一种方法:
$command = Yii::app()->{db}
->createCommand('SELECT "." `Stop!`, current_time `Hammer Time`');
$reader = $command->query();
$sth = $command->getPdoStatement();
for ($i = 0; $i < $sth->columnCount(); $i++) {
$col = $sth->getColumnMeta($i);
print $col['name'].' ';
}