Один SQL запрос выдает разный результат

221
28 июля 2021, 04:10

Выполняю в php

$sth = con_pdo()->prepare("SELECT COUNT(*) FROM `jointbase` WHERE `create_cat` = 1054 group by brand"); 
$sth->execute(array()); 
$number_of_rows = $sth->fetchColumn();

Результат: $number_of_rows содержит число 3.

Этот же запрос через SQL в phpmyadmin:

SELECT COUNT(*) FROM `jointbase` WHERE `create_cat` = 1054 group by brand

результат 358

Как такое может быть?

Answer 1

вы выполняете запрос с группировкой, ответом служит набор строк с подсчитанным count для каждой группы (то есть число строк более одной).
Поскольку вы не задаете порядок выборки order by, а сам по себе он никак не регламентирован вы можете получать разные результаты не то чтобы в разных средах выполнения, но и даже при выполнении одного и того же запроса подряд.

Поэтому если хотите получать результаты в одинаковом порядке на разных клиентах явно укажите порядок сортировки результатов запроса order by

READ ALSO
Каким лучше образом пропарсить сайт без API?

Каким лучше образом пропарсить сайт без API?

У меня есть сайт с торговой площадкой, мне нужно его пропарсить средствами php (есть ли какие то библиотеки)

175
Как из select сделать radio?

Как из select сделать radio?

Есть форма с select которую надо перевести в radio buttonПри выборе одного из значений появляется поле для заполнения данными для этого поля

352
Много однотипных Entity Doctrine

Много однотипных Entity Doctrine

Есть много одинаковых табличек, по типу table_2019, table_2018, поля в них идентичныМожно ли как то настроить доктрину для работы с такими табличками,...

370
Преобразование даты в unix time

Преобразование даты в unix time

Сообствено вопрос таков, имеем задачу, время формата 1004

301