Cache': техника группировки
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: тезис, доклад по географии на тему
| Добавил(а) на сайт: Kapitolina.
Предыдущая страница реферата | 1 2 3 4 5 6 7 | Следующая страница реферата
красный шарик 10
8
синий шарик 5
15
То есть из четырех исходных получили две выходные, причем в выходных строках в одну ячейку попали от одного до нескольких значений (количество игрушек в партии). Формально говоря, мы можем сделать с ними что хотим, но поскольку речь ведем о группировке, то в группировке принято из этих нескольких значений, попадающих в одну ячейку, составлять одно значение и приводить таким образом, выходные данные к классическому определению таблицы с атомарными значениями в каждой ячейке. Характер манипулирования такими наборами с целью получения одного значения называется функцией группирования. Наиболее часто встречаются самые простейшие - вроде банального сложения в столбик или вычисления их количества. В более сложных случаях значения, попавшие в одну ячейку, могут быть отсортированы по выбранному критерию, например, по дате получения партии, из которой было взято это значение и в совокупности с датой получения партии может быть получена например средняя скорость поступления таких изделий. Вообще говоря, эти функции группирования составляют совершенно отдельный интереснейший для прикладных специалистов класс задач, находящийся на стыке задач класса OLAP и Data Mining. В этой статье мы опустим их разнообразие и будем пользоваться только простейшей функцией - сложение в столбик, которой в SQL соответствует функций SUM. В приведенном выше примере запрос на SQL выглядел бы примерно как
select color, figure, SUM(count)
from NewYearToys
group by color, figure
Обычно совместно с группировкой используется операция сортировки. О ней мы скажем отдельно позднее. Надеюсь, общетеоретические сведения о группировке, приведенные выше, должны оказаться достаточными для ее технической реализации.
Итак, группировка может быть классифицирована по типу выборки данных и по ширине группировки. По типу выборки данных группировка делится на группировку с ориентацией на выборку с помощью функции $ORDER и с ориентацией на выборку с помощью функции $QUERY. По ширине группировки деление идет на нормальную и широкую.
Будем использовать данные, сгенерированные в вышеприведенном скрипте и рассмотрим как именно технически выполнить группирование. Обратим внимание на структуру выходных данных и заметим, что сочетание группирующих полей для каждой строки образует уникальное значение. Следовательно, в иерархических базах данных это сочетание должно стоять слева от знака равенства:
переменная( группирующее поле 1 ...
группирующее поле 2 ...
группирующее поле N ) = набор негруппирующих полей
Здесь под таинственными символами и обозначены различия типов группировки - в случае использования функции $ORDER используем конкатенацию значений группирующих полей, в случае использования функции $QUERY используем обычные запятые, рассматривая значения группирующих полей в качестве значений индексов соответствующего уровня.
Выполним группировку для функции $QUERY:
GroupQ()
; group to use $QUERY function
; use SUM function
k group
n i,color,figure,count
s i=""
f s i=$o(^group(i)) q:i="" d
. s color=$p(^group(i),"~",1)
. s figure=$p(^group(i),"~",2)
Рекомендуем скачать другие рефераты по теме: виды шпор, в контакте сообщения.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 | Следующая страница реферата