170 похожих чатов

Всем привет. Вопрос больше к бд, но группа по mysql

90 человек, по этому попробую тут спросить:
долго отрабатывает count(*) что бы узнать количество записей в таблице, какие могут быть альтернативы?

18 ответов

8 просмотров

надо узнать сложность запроса и скорее всего поместить в индекс юзай explain для того чтобы посмотреть насколько заюзал запрос индексы

а если сделаешь count(id)?

Через explain запрос посмотри

вот здесь достаточно подробно описано https://ruhighload.com/Индексы+в+mysql

не думаю что это сильно поможет, насколько помню сам mysql count(*) оптимизирует + MyISAM вообще быстрее обработает count(*)

ну, что быстрее выбрать всю колонку или только 1 столбец? )

Одинаково должно быть.

Уточни как именно используешь count(*) ? Получаешь количество записей в контексте определенных фильтров или делаешь агрегацию количества записей с группировкой по определенным полям?

Select count(id) То есть делай count по одному столбцу, желательно по тому для которого индекс создан, тогда вообще таблица дергаться не будет

Не одинаково 100%, В таблице в 2 столбца (id и text) на 1000 строк, где текст размером 1мб в каждой строке. При выборе всех id считаются 10ки кб с диска, а при выборе обоих столбцов - 1 гиг, так что быстрее отработает?)

Точно не одинаково, можно проверить таблице с 2мя столбцами (id и text) где текст домустим по 1мб,

давай проверю

поделись, как глянешь

это таблица с json весом под 50 гб

Я не про count писал, а про разницу между выбором всех столбцов для N строк и одного столбца для N строк С count сложнее проверить, могут влиять индексы, еще что, в доках рекомендуют указывать столбец, т.к. оптимизатор не всегда может это сделать

Кто сказал что нужно читать с диска?

так просто розговор изначально был про count

Похожие вопросы

Обсуждают сегодня

А чем вам питонисты не угодили?😂
.
79
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Dim Dim, [02.07.2024 11:07] DB 0x62 Dim Dim, [02.07.2024 11:07] DB 0x66 Dim Dim, [02.07.2024 11:07] кто пояснит что это?
Dim Dim
14
Ошибка: segmentation fault (core dumped) Код: pastebin.com/BEsNNSSV Сообщение от компилятора: отсутствует ОС: Arch Linux Ядро: x86_64 Linux 6.9.7-arch1-1 Процессор: Intel Cele...
sec
4
Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Ещё такой вопрос. Мне необходимо хранить пароль пользователя локально. Для этого планирую использовать ini файл. Это для автозаполнения полей логин и пароль при авторизации. Е...
Евгений
19
Кстати, я тут еще с одной темой столкнулся, вот учу я C++, на таком то ресурсе, а остальные постоянно советуют практиковаться, что то писать, проекты, но как писать если вот т...
aaswq1
7
Добрый день, чат. Мне в очередь из других RabbitMQ по shovel валятся метрики в формате текста для Prometheus. Помогите пожалуйста подружить RabbitMQ и Prometheus, чтобы он (...
Aleksey
4
@ahndmn @ayaw0_0 здарова, на чем пишете?
Aiwan \ (•◡•) / _bot
7
Карта сайта