Для вступления в общество новичков и профессионалов домен-индустрии, пожалуйста нажмите здесь ...

   
 Купля-продажа и обсуждение доменных имён
        

  
Вернуться   Форум о доменах > Дизайн и развитие проектов > Программирование
Регистрация Реноме Правила форума Справка Сообщество
Программирование PHP, Perl, HTML, XHTML, CSS, JavaScript, MySQL и другие языки кодирования.

Ответ
 
Опции темы
Сегодня
от 149р за .RU
Аренда сервера
2x Intel Hexa-Core Xeon E5-2420
Всего 79 евро!

с видеокартой GeForce GTX 1080 Ti
всего 99 евро!

от 149р за .РФ Реклама на DomenForum.net
Старый 11.08.2014, 05:48   #1
SEO Специалист
 
Аватар для pastuhoff
 
Регистрация: 24.10.2005
Сообщений: 6,529
Доменные сделки: 40
Реноме: 5371
Одобрения
Спасибо (Отдано): 187
Спасибо (Получено): 315
MariaDB: несколько SELECT COUNT(*)

Коллеги, подскажите, можно ли на такой таблице

CREATE TABLE `z` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`x` smallint(5) unsigned NOT NULL DEFAULT '0',
`a` int(11) unsigned NOT NULL DEFAULT '0',
`b` int(11) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `x` (`x`)
) ENGINE=Aria DEFAULT CHARSET=cp1251 PAGE_CHECKSUM=1 TRANSACTIONAL=0

объединить запросы

SELECT COUNT(*) AS n1 FROM `z` WHERE x=1
SELECT COUNT(*) AS n2 FROM `z` WHERE a=0 AND x=1
SELECT COUNT(*) AS n3 FROM `z` WHERE a=1 AND x=1
SELECT COUNT(*) AS n4 FROM `z` WHERE a>1 AND x=1
SELECT COUNT(*) AS n5 FROM `z` WHERE b=0 AND x=1
SELECT COUNT(*) AS n6 FROM `z` WHERE b=1 AND x=1
SELECT COUNT(*) AS n7 FROM `z` WHERE b>1 AND x=1

в один, дабы уменьшить общее время выполнения всех этих селектов (новые индексы создавать нельзя).

добавлено через 4 часа 12 минут
Подсказали следующее решение:

SELECT
SUM(1) AS `n1`,
SUM(IF(a=0,1,0)) AS `n2`,
SUM(IF(a=1,1,0)) AS `n3`,
SUM(IF(a>1,1,0)) AS `n4`,
SUM(IF(b=0,1,0)) AS `n5`,
SUM(IF(b=1,1,0)) AS `n6`,
SUM(IF(b>1,1,0)) AS `n7`
FROM `z` WHERE x=1

Это ведь уже нельзя ускорить?
__________________
Коллекционер доменных имен.

Последний раз редактировалось pastuhoff; 11.08.2014 в 10:00. Причина: Добавлено сообщение
pastuhoff вне форума   Ответить с цитированием
Ответ



Реклама

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 23:55. Часовой пояс GMT +4.