выпадающий список отдельное значение yii2

Я попытался сделать раскрывающийся список из моей базы данных postgres, и база данных выглядит так

| id_provinsi | id_waktu |  id_kbli |
|     1000    |   12007  |     A    |
|     1000    |   12007  |     A1   |
|     1000    |   12007  |     A2   |
|     1000    |   12008  |     A    |
|     1000    |   12008  |     A1   |
|     1000    |   12008  |     A2   |
|     1100    |   12007  |     A    |
|     1100    |   12007  |     A1   |
|     1100    |   12007  |     A2   |
|     1100    |   12008  |     A    |
|     1100    |   12008  |     A1   |
|     1100    |   12008  |     A2   |

и я хочу получить раскрывающийся список, который показывает id_waktu вот так

| 12007 |
| 12008 |

Мой код:

$pdrb=PdrbProv::find()->groupBy('id_waktu')->all();
$listData=ArrayHelper::map($pdrb,'id_provinsi','id_waktu');

echo $form->field($model, 'id_waktu')->dropDownList(
    $listData,
    ['prompt'=>'Select...']
    );

но я получаю следующую ошибку:

QLSTATE[42803]: Grouping error: 7 ERROR: column "pdrb_prov.id_provinsi" must appear in the GROUP BY clause or be used in an aggregate function
LINE 1: SELECT * FROM "pdrb_prov" GROUP BY "id_waktu"
^
The SQL being executed was: SELECT * FROM "pdrb_prov" GROUP BY "id_waktu"

Что я должен сделать? Кто-нибудь может помочь? Спасибо


person Elsa Maudina    schedule 28.06.2018    source источник


Ответы (2)


Попробуйте эти запросы

$pdrb = PdrbProv::find()
           ->select('id_provinsi, id_waktu')
           ->groupBy('id_waktu')
           ->all();
person Janki Rathod    schedule 28.06.2018
comment
Спасибо. это работает. но, похоже, я не могу повторить $pdrb. Любой вариант как это сделать - person Elsa Maudina; 28.06.2018
comment
Вы не можете повторить. потому что он дает результат в виде массива. использовать print_r() - person Janki Rathod; 28.06.2018
comment
так что я должен сделать, чтобы сделать выпадающий список из него? - person Elsa Maudina; 28.06.2018
comment
Вы можете использовать [kartik-v/yii2-widget-select2] для этих - person Janki Rathod; 28.06.2018

person    schedule
comment
Хотя этот код может касаться сути вопроса, предоставьте некоторый контекст или пояснение. - person Joshua Drake; 28.06.2018