для неиндексированной базы данных
Рис. 3.32 Группировка по одному столбцу
для индексированной базы данных
Рис. 3.33 Группировка по одному столбцу для индексированной и неиндексированной базы данных для MS SQL Server
Рис. 3.34 Группировка по одному столбцу для индексированной и неиндексированной базы данных для Informix
Рис. 3.35 Группировка по одному столбцу для индексированной и неиндексированной базы данных для DB2
2.2. Группировка по двум столбцам различного числа строк (табл. 3.16)
Текст запроса:
Select ats_number, class, avg(number), max(number), min(number), count(*) from phones where number < «ограничение на число строк» group by ats_number, class having ats_number > 15 and count(*) >5
ЧислоСтрок |
Время выполнения, сек |
|||||
DB2 |
Informix |
MS SQL Server |
||||
инд. |
неинд. |
инд. |
неинд. |
инд. |
неинд. |
|
100000 |
3 |
4 |
5 |
8 |
0 |
0 |
300000 |
15 |
17 |
30 |
32 |
2 |
2 |
500000 |
26 |
31 |
57 |
58 |
3 |
5 |
700000 |
38 |
43 |
82 |
82 |
6 |
8 |
800000 |
46 |
50 |
95 |
95 |
7 |
9 |
Рис. 3.36 Группировка по двум столбцам для неиндексированной базы данных
Рис. 3.37 Группировка по двум столбцам для индексированной базы данных
Рис. 3.38 Группировка по двум столбцам для индексированной и неиндексированной базы данных для MS SQL Server
Рис. 3.39 Группировка по двум столбцам для индексированной и неиндексированной базы данных для Informix
Рис. 3.40 Группировка по двум столбцам для индексированной и неиндексированной базы данных для DB2
2.3. Группировка по трем столбцам различного числа строк (табл. 3.17)
Текст запроса:
Select house, surname, name, max(length(surname)-length(name)), min(length(surname)+length(name)), avg((length(name)-length(surname))/length(name)), count(*) from abonents where ID < «ограничение на число строк» group by house, surname, name having house between 10 and 30 and count(*)>3 and max(length(surname)-length(name))=3
ЧислоСтрок |
Время выполнения, сек |
|||||
DB2 |
Informix |
MS SQL Server |
||||
инд. |
неинд. |
инд. |
неинд. |
инд. |
неинд. |
|
100000 |
2 |
5 |
4 |
9 |
1 |
1 |
300000 |
4 |
6 |
11 |
12 |
2 |
3 |
500000 |
5 |
8 |
15 |
20 |
3 |
4 |
700000 |
7 |
10 |
18 |
26 |
5 |
5 |
800000 |
8 |
11 |
20 |
29 |
5 |
5 |
Рис. 3.41 Группировка по трем столбцам
для неиндексированной базы данных
Рис. 3.42 Группировка по трем столбцам
для индексированной базы данных
Рис. 3.43 Группировка по трем столбцам индексированной и неиндексированной базы данных для MS SQL Server
Рис. 3.44 Группировка по трем столбцам индексированной и неиндексированной базы данных для Informix
Рис. 3.45 Группировка по трем столбцам индексированной и неиндексированной базы данных для DB2
2.4. Группировка по четырем столбцам различного числа строк (табл. 3.18)
Текст запроса:
Select surname, name, patronymic, house, max(length(surname)), min(length(name)), avg(length(patronymic)), avg(house) from abonents where ID < «ограничение на число строк» group by surname, name, patronymic, house having surname like `Surname_23%` and house > 13 and min(length(name))>2 and avg(house)!=10
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.