У меня есть программа (извините, изменяю, что это не вариант), которая выводит файлы журнала с количеством строк более 500 тыс.
Я пытаюсь сгруппировать строки (а затем отсортировать эти группы) в журналефайл, основанный на подстроке со строками
Например, у меня есть строки, подобные приведенным ниже:
SELECT something WHERE TIM BETWEEN '*' AND '*' AND something;
, что я собираюсь сгруппировать, это TIM BETWEEN '*' AND '*'
, где * соответствует между строкамипример:
SELECT something WHERE TIM BETWEEN '2010-03-04' AND '2010-03-10' AND something;
SELECT something WHERE TIM BETWEEN '2011-01-28' AND '2011-02-05' AND something;
SELECT something WHERE TIM BETWEEN '2010-03-04' AND '2010-03-10' AND something;
SELECT something WHERE TIM BETWEEN '2011-01-28' AND '2011-02-05' AND something;
будет сгруппирован как таковой в выходных данных:
SELECT something WHERE TIM BETWEEN '2010-03-04' AND '2010-03-10' AND something;
SELECT something WHERE TIM BETWEEN '2010-03-04' AND '2010-03-10' AND something;
SELECT something WHERE TIM BETWEEN '2011-01-28' AND '2011-02-05' AND something;
SELECT something WHERE TIM BETWEEN '2011-01-28' AND '2011-02-05' AND something;
, причем каждая группа также будет отсортирована на основе всей строки, так что где "что-то" похожерядом друг с другом?
Я пытался собрать сценарий оболочки для вывода того, что я хочу прочитать из файла журнала, но безуспешно!
Редактировать: Мне нужнотакже упомянуть, что «что-то» может быть несколькими словами, например:
SELECT blah1, blah2 or SELECT blah1, blah2, blah3