如何在模型yii2框架中使用自定义查询
如何在使用yii2框架的模型中使用自定义查询?我正在尝试,但出现了错误 我是Yii2框架的初学者 以下是我的登录模式:如何在模型yii2框架中使用自定义查询,yii2,Yii2,如何在使用yii2框架的模型中使用自定义查询?我正在尝试,但出现了错误 我是Yii2框架的初学者 以下是我的登录模式: public function getUser($id) { $return = User::findBySQL("Select * from User where userType = 'AHP' and userid = '$id';"); return($return['AHPName']); } 尝试使用ActiveQuery: public func
public function getUser($id)
{
$return = User::findBySQL("Select * from User where userType = 'AHP' and userid = '$id';");
return($return['AHPName']);
}
尝试使用
ActiveQuery
:
public function getUser($id)
{
$data = User::find()->where(['userType' => 'AHP', 'userid' => $id])->one();
return $data['AHPName'];
}
使用自定义查询:
public function getUser($id)
{
$sql = "Select * from User where userType = 'AHP' and userid = '.$id.'";
$return = User::findBySQL($sql)->one();
return $return->AHPName;
}
通过主键或
列值数组
这将找到用户类型为AHP
且用户id为$id
的用户
public function getUser($id)
{
$data = User::findOne(['userType' => 'AHP', 'userid' => $id]);
return $data['AHPName'];
}
您可以尝试使用这种技术在yii2中编写自定义查询
<?php
use yii\db\Query;
$query = new Query();
$query->select(['*'])->from('user')
->where('user.userType=:id',['id'=>'AHP'])
->andWhere('user.userid=:no',['no'=>$id]);
$command = $query->createCommand();
$result = $command->queryAll();
?>
<?php
use yii\db\Query;
$query = new Query();
$query->select(['*'])->from('user')
->where('user.userType=:id',['id'=>'AHP'])
->andWhere('user.userid=:no',['no'=>$id]);
$command = $query->createCommand();
$result = $command->queryAll();
?>
User::find()->where('userType = :type and userid = :id',
['type'=>AHP, 'id' => $id])->one();