code: public function createCommand($db = null)
      {
          if ($db === null) {
              $db = Yii::$app->getDb();
          }
          list($sql, $params) = $db->getQueryBuilder()->build($this);
  
          $command = $db->createCommand($sql, $params);
          $this->setCommandCache($command);
  
          return $command;
      }
docs: Creates a DB command that can be used to execute this query.
  @param Connection $db the database connection used to generate the SQL statement.
  If this parameter is not given, the `db` application component will be used.
  @return Command the created DB command instance.