如何在 yii2 中为另一个 sql 查询使用查询数据

How to use query data for another sql query in yii2

我在这里有一个问题:

  public function SearchExactJob($id) {
      $connect = \Yii::$app->db;

      $query = $connect->createCommand('
           SELECT job_name FROM job_questions WHERE job_id=:id')
           ->bindValue(':id':$id)
           ->queryAll();

}

我想将 job_name 用于另一个查询:PS:我只是把它写在纸上以防我能够找到如何获取此数据

  $anotherquery = $connect->createCommand(
                  'SELECT * FROM company_questions
                   WHERE company_question = [the job_name I want to get from the `$query`])

此外,如果我能成功获得 $anotherquery 工作,我想获取数据并将其传递给分配给它的视图。

但是,我正在寻求帮助,因为我最近才使用 Yii2。请帮我。

获取职位名称

public function SearchExactJob($id) {
  $connect = \Yii::$app->db;

  $query = $connect->createCommand('
       SELECT job_name FROM job_questions WHERE job_id=:id')
       ->bindValue(':id':$id)
       ->asArray()
       ->queryAll();
}

以上代码将return二维数组。将二维数组转换为一维数组

 $jobs = array_map('current',$query);

您终于可以使用where in 子句来搜索工作了。

$anotherquery = $connect->createCommand(
              'SELECT * FROM company_questions
               WHERE IN $jobs)

我强烈建议您在查询数据时使用活动记录,语法错误更少,更易于阅读。

我已经解决了这个问题。

     $query=$connect->createCommand('
       SELECT job_name FROM job_questions WHERE job_id=:id')
       ->bindValue(':id':$id)
       ->queryOne(\PDO::FETCH_OBJ);

在变量上添加数据:例如。 $job_name

$job_name = $query->job_name;