代码之家  ›  专栏  ›  技术社区  ›  user759235

yii2,向db查询添加额外的伪字段

  •  3
  • user759235  · 技术社区  · 8 年前

    因此,我试图向db查询添加一些伪键/值,因为这些键不在表中,我不想改变数组本身,我希望有一个简单的方法可以在一开始就这样做,所以当我从db构建数组时。

    下面的示例显示,我正在尝试添加名为“type”&tax的附加字段,并在其旁边添加值。

    很遗憾,下面的示例不起作用,所以是否有方法向每一行添加具有相同值的额外字段?

    $query = (new \yii\db\Query())
    ->select(['id' , 'name' , 'price' , 'type' => 'car' , 'tax' => 'full' ])
    ->from('products' )
    
    1 回复  |  直到 8 年前
        1
  •  2
  •   Yerke    8 年前

    如果你用过 ActiveRecord 您可以在类中添加一些具有默认值的变量。

    class User extends ActiveRecord
    {
        public $example = 'value';
        ...
    

    但是如果我们在说拿个假人 key => value 直接从sql,那么这种方式应该是可行的:

    use yii\db\Expression;
    ...
    
    $query = (new \yii\db\Query())
        ->select(['id' , 'name' , 'price' , new Expression("'car' AS type") , new Expression("'full' AS tax")])
        ->from('products' );