SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 08.02.2017 15:42:42

sql157
Завсегдатай
Зарегистрирован: 17.03.2016
Сообщений: 97

Что влияет на скорость выполнения запроса?

Используется:
    Комп:
       - 2,6Ггц
       - 6,0 Гб ОЗУ
       - Win 7x64
   
Программы:
        - OpenServer
        - Access - 2016
        - MySql 5.7 x 64
        - Odbc - mysql-connector-odbc-5.3.7-winx64

    Всё установлено и используется на одном компьютере.

Характеристики таблицы:
- кол строк предполагается  - больше 1,0 млн
- количество столбцов ~ 20 штук
       
        Таблица  (tbl8)
        Кол. строк  - 12 425 строк
        Объём  - 24,6 Мб
           

   
              CREATE TABLE `tbl5` (
            `id` INT(11) NOT NULL AUTO_INCREMENT,
            `tbl` LONGTEXT NULL,
            `idsub` INT(20) NOT NULL,
            `pol_3` INT(11) NULL DEFAULT NULL,
            `pol_4` LONGTEXT NULL,
            `pol_5` LONGTEXT NULL,
            `pol_6` LONGTEXT NULL,
            `pol_7` LONGTEXT NULL,
            `pol_8` LONGTEXT NULL,
            `pol_9` LONGTEXT NULL,
            `pol_10` LONGTEXT NULL,
            `pol_11` LONGTEXT NULL,
            `pol_12` LONGTEXT NULL,
            `pol_13` LONGTEXT NULL,
            `pol_14` LONGTEXT NULL,
            `pol_15` LONGTEXT NULL,
            `pol_16` LONGTEXT NULL,
            `pol_17` LONGTEXT NULL,
            UNIQUE INDEX `id` (`id`)
        )
        COLLATE='utf8_general_ci'
        ENGINE=InnoDB
        AUTO_INCREMENT=240013
 


        В таблице тип полей "LONGTEXT" принят как предварительный, для проверки работы базы... Потом полям будут присвоены необходимые типы: LONGTEXT, TEXT, числа, даты и т.д. В полях: pol_9, pol_10, pol_11 используется много строчный текст более 1 000 символов. В остальных полях просто текст "ТЕКСТ _ ЗАПИСИ pol_n"


Запрос
    Выполняем запрос в программе HeidiSql из таблицы tbl8
   
   
select*
    from
        `01tst`.`tbl8`
    where
        (
            `01tst`.`tbl8`.`idsub` = 2
        )

    Запрос выполняется  2 сек.
    Когда количество строк достигает более 100 000 - длительность выполнения запроса 40 сек.



Вопрос
Как уменьшить длительность выполнения запроса?
Что влияет на длительность выполнения запроса?

Отредактированно sql157 (08.02.2017 15:49:21)

Неактивен

 

#2 08.02.2017 15:45:00

klow
Старожил
Зарегистрирован: 06.12.2014
Сообщений: 411

Re: Что влияет на скорость выполнения запроса?

Постройте по полю tbl8`.`idsub` индекс.

Неактивен

 

#3 08.02.2017 15:53:14

sql157
Завсегдатай
Зарегистрирован: 17.03.2016
Сообщений: 97

Re: Что влияет на скорость выполнения запроса?

В ТС скрин не прикрепляется
Таблица выглядит так
см. скрин. по ссылке http://prntscr.com/e6286a

Для такого поля можно использовать индекс

Неактивен

 

#4 08.02.2017 16:00:17

klow
Старожил
Зарегистрирован: 06.12.2014
Сообщений: 411

Re: Что влияет на скорость выполнения запроса?

Не понял вопроса. Почему нельзя? Только индекс будет не уникальный!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson