Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql xAxis分类图表_Mysql_Yii_Highcharts_Yii2_Query Builder - Fatal编程技术网

Mysql xAxis分类图表

Mysql xAxis分类图表,mysql,yii,highcharts,yii2,query-builder,Mysql,Yii,Highcharts,Yii2,Query Builder,我想从我的表格中选择2011年到2015年。这是表格: 所以,我提出了这样的问题 $tahunmasukpelamar = (new \yii\db\Query()) ->select(['TahunMasuk']) ->from('temp_jkpelamarmagister') ->Where(['between', 'TahunMasuk', 2007, 2011]) ->column();

我想从我的表格中选择2011年到2015年。这是表格:

所以,我提出了这样的问题

$tahunmasukpelamar = (new \yii\db\Query())
        ->select(['TahunMasuk'])
        ->from('temp_jkpelamarmagister')
        ->Where(['between', 'TahunMasuk', 2007, 2011])
        ->column();

    $lakilakipelamar = (new \yii\db\Query())
        ->select(['Lakilaki'])
        ->from('temp_jkpelamarmagister')
        ->column();

    $perempuanpelamar = (new \yii\db\Query())
        ->select(['Perempuan'])
        ->from('temp_jkpelamarmagister')
        ->column();
    $lainlainpelamar = (new \yii\db\Query())
        ->select(['Lainlain'])
        ->from('temp_jkpelamarmagister')
         ->column();

    $lakilakipelamar = array_map('floatval', $lakilakipelamar);
    $perempuanpelamar = array_map('floatval', $perempuanpelamar);
    $lainlainpelamar = array_map('floatval', $lainlainpelamar);

    $data['tahunmasukpelamar'] = json_encode($tahunmasukpelamar);
    $data['lakilakipelamar'] = json_encode($lakilakipelamar);
    $data['perempuanpelamar'] = json_encode($perempuanpelamar);
    $data['lainlainpelamar'] = json_encode($lainlainpelamar);
那也是控制器

我认为:

但是,为什么我的图表会这样显示:

我能做些什么来解决这个问题?提前感谢

如前所述,我想从我的表格中选择2011年到2015年

像这样更改查询

$tahunmasukpelamar = (new \yii\db\Query())
    ->select(['TahunMasuk'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();

$lakilakipelamar = (new \yii\db\Query())
    ->select(['Lakilaki'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();

$perempuanpelamar = (new \yii\db\Query())
    ->select(['Perempuan'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();
$lainlainpelamar = (new \yii\db\Query())
    ->select(['Lainlain'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();

所有其他代码都是相同的

为什么2007年至2011年间的$Tahumanasukpelamaris和其他代码不同$Tahumanasukpelamar是2007年至2011年的类别,其余为2004年至2015年的类别。所以在所有数据库查询中都有相同的范围。也许您应该像这样组合查询,从表中选择tahun masuk、lakilaki、perempuan、lainnya,其中tahunmasuk>=2007和tahunmasuk
$tahunmasukpelamar = (new \yii\db\Query())
    ->select(['TahunMasuk'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();

$lakilakipelamar = (new \yii\db\Query())
    ->select(['Lakilaki'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();

$perempuanpelamar = (new \yii\db\Query())
    ->select(['Perempuan'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();
$lainlainpelamar = (new \yii\db\Query())
    ->select(['Lainlain'])
    ->from('temp_jkpelamarmagister')
    ->Where(['between', 'TahunMasuk', 2011, 2015])
    ->column();