Итак, у меня есть стол под названием «часы»
тогда у меня есть 3 столбца, как так
id | manufacture | model
1 rolex 2483
2 rolex 3940
3 rolex 4940
4 dent ee30
но я хочу, чтобы результат был похож
rolex
dent
Но когда я попробую следующее, чтобы выбрать производителей
('SELECT manufacture FROM `watches` GROUP BY manufacture')
в моменты, когда он показывает только «вмятину», когда это должно быть «rolex, вмятина». Как это не работает. я тоже пробовал это, но это дало тот же результат
('SELECT DISTINCT(`manufacture`) FROM `watches`')
полная функция
$query = $this->pdo->prepare('SELECT DISTINCT(`manufacture`) FROM `watches`');$query->execute();
if($query->fetch()){
$row = $query->fetchAll();
foreach($row as $i){
$select .= '<option value="'.$i['manufacture'].'">'.$i['manufacture'].'</option>';
}
return $select;
} else {
return '<option value="0">No watches yet!</option>';
}
Пожалуйста, попробуйте использовать
if ($query->rowCount() > 0) {
вместо
if($query->fetch()){
так как fetch
получает результат из заявления, но для этого вы используете fetchAll
в последующем коде.
Добавить ГДЕ 1
'SELECT `manufacture` FROM `watches`WHERE 1 GROUP BY `manufacture`
Рекомендуется всегда заключать имена таблиц и столбцов в знак ударения.
Вам просто нужно заказать при производстве:
SELECT manufacture FROM `watches` GROUP BY manufacture ORDER BY manufacture desc