Из очередного письма в PM:
Цитата:
Можно ли ещё сделать чтобы он выдавал кол-во открытых страниц за период, подсчитывал кол-во уникальных документов за период и документов открытых вообще за период...
|
Поскольку Вам требуется выполнять ряд разных запросов на одном и том же источнике данных, есть смысл вынести текст запросов в отдельные файлы.
Пакетный файл примет следующий вид:
читать дальше »
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFile=E:\Песочница\0336\StatDocsView3kv.txt
set sFromDateTime=2013-08-05
set sToDateTime=2013-08-15
"%ProgramFiles%\Log Parser 2.2\LogParser.exe" file:"Query - Pages count by interval.sql"?SourceFile=%sSourceFile%+FromDateTime=%sFromDateTime%+ToDateTime=%sToDateTime% -i:TSV -iSeparator:tab -headerRow:OFF -iTsFormat:"yyyy-MM-dd hh:mm:ss.ll" -iCodepage:65001 -stats:OFF -rtp:-1
"%ProgramFiles%\Log Parser 2.2\LogParser.exe" file:"Query - Unique documents count by interval.sql"?SourceFile=%sSourceFile%+FromDateTime=%sFromDateTime%+ToDateTime=%sToDateTime% -i:TSV -iSeparator:tab -headerRow:OFF -iTsFormat:"yyyy-MM-dd hh:mm:ss.ll" -iCodepage:65001 -stats:OFF -rtp:-1
"%ProgramFiles%\Log Parser 2.2\LogParser.exe" file:"Query - Documents count by interval.sql"?SourceFile=%sSourceFile%+FromDateTime=%sFromDateTime%+ToDateTime=%sToDateTime% -i:TSV -iSeparator:tab -headerRow:OFF -iTsFormat:"yyyy-MM-dd hh:mm:ss.ll" -iCodepage:65001 -stats:OFF -rtp:-1
endlocal
exit /b 0
1. Общее количество открытых страниц за период — «Query - Pages count by interval.sql»:
Код:
SELECT
'%FromDateTime%' AS [From date],
'%ToDateTime%' AS [To date],
SUM(Field3) AS [Total pages]
USING Field1 AS Date
INTO DATAGRID
FROM '%SourceFile%'
WHERE Date BETWEEN TO_TIMESTAMP('%FromDateTime%', 'yyyy-MM-dd') AND TO_TIMESTAMP('%ToDateTime%', 'yyyy-MM-dd')
2. Количество уникальных документов за период — «Query - Unique documents count by interval.sql»:
Код:
SELECT
'%FromDateTime%' AS [From date],
'%ToDateTime%' AS [To date],
COUNT(DISTINCT Field2) AS [Total unique documents]
USING Field1 AS Date
INTO DATAGRID
FROM '%SourceFile%'
WHERE Date BETWEEN TO_TIMESTAMP('%FromDateTime%', 'yyyy-MM-dd') AND TO_TIMESTAMP('%ToDateTime%', 'yyyy-MM-dd')
3. Общее количество документов за период — «Query - Documents count by interval.sql»:
Код:
SELECT
'%FromDateTime%' AS [From date],
'%ToDateTime%' AS [To date],
COUNT(Field2) AS [Total documents]
USING Field1 AS Date
INTO DATAGRID
FROM '%SourceFile%'
WHERE Date BETWEEN TO_TIMESTAMP('%FromDateTime%', 'yyyy-MM-dd') AND TO_TIMESTAMP('%ToDateTime%', 'yyyy-MM-dd')
Надеюсь, ничего не напутал.