@IA-NE-ROBOT

Почему несоответствие кол-ва записей WP и Select вывода в PHPMyAdmin?

Привет, в блоге 127000 по данным WP, в сайтмапе тоже.

Если зайти в PHPMyAdmin в wp_posts без всяких фильтров показывает 103000 записей (запрос SELECT * FROM `wp_posts` ORDER BY `post_status` DESC). Но, если запустить поиск, фильтруя , например по году, а потом сложить кол-во записей опять получится 127000.

Раньше думал, что WP врет, оказалось почти все сходится, но простой SELECT всех постов выводит неверное кол-во. В чем может быть причина дезы? Может ли быть из-за каких-либо ограничений на время выполнения или чего-то подобного?
  • Вопрос задан
  • 46 просмотров
Решения вопроса 1
dyuriev
@dyuriev
A posteriori
PHPMyAdmin всегда грешил количеством записей в крупных таблицах InnoDB, не обращайте внимание на погрешность +/-15%, или поэкспериментируйте с параметром $cfg['MaxExactCount']

пруф: https://docs.phpmyadmin.net/en/latest/faq.html#the...
3.11 The number of rows for InnoDB tables is not correct.

phpMyAdmin uses a quick method to get the row count, and this method only returns an approximate count in the case of InnoDB tables.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@IA-NE-ROBOT Автор вопроса
Хрень какая-то. Дело не в наложении дублей
SELECT * FROM `wp_posts` дает 103000
SELECT * FROM `wp_posts` WHERE ID > 1 дает искомые 127000

При этом в соседней DB в той же табле, где кол0во записей 66000
оба запроса дают полное совпадение.

Мало того, в первой DB, но в другой табле wp_term_relationships 380000 записей но и там все совпадает

Если зайти в DB, где таблы списком, напротив wp_posts указано 103000 записей, но есть ссылка с параметром &real_row_count=true, после нажатия на которую выводятся искомое число 127000.
Почему-то только в этой таблице PMA скрывает real_row_count
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы