Вы можете написать запрос ниже, который заботится о дате выяснения
query="select count(*) from item_sales
where code = 12
and date = DATEDIFF(now(),'1800-12-28')";
И вы можете написать скрипт оболочки или php скрипт и установить cronjob для запуска этого запроса и получения результата и отправки почты с результатом. ]
Пример оболочки:
data=`mysql -u $user --password=$password -e $query`;
echo "Total Count :$data" | mail -s "subject" someone@somewhere.com
Для сложного строкового параметра попытайтесь передать аргумент с помощью powershell здесь-строки так, чтобы Вы не должны были бы волноваться о выходе из единственных / двойных кавычек
UPDATE1: Я не мог получить fomratting, работающий, таким образом, вот снимок экрана.
UPDATE2: Я смог форматировать код наконец.
d:\scripting\smtplogs\logparser\logparser.exe @" SELECT TOP 50 Receiver, COUNT() INTO %TMPOutput%\TopReceiversNDRALL.gif FROM %TempDir%\PostAll.log WHERE Sender LIKE '' AND Receiver NOT LIKE '%%go-fmtopper%%' GROUP BY Receiver ORDER BY COUNT() DESC" -i:TSV -iSeparator:space -headerRow:OFF -iHeaderFile:"header3.tsv" -lineFilter:"+10." -o:CHART -chartType:ColumnClustered -config:MyScript.js -chartTitle:"Receivers for NULL messages ALL for %DateGraph% "@
Удостоверьтесь, что Вы добавляете новую строку между здесь-строковыми моникерами" и ".
К вашему сведению, если Вам не нужно никакое расширение переменной PowerShell затем, Вы - более обеспеченное использование, единственное заключенный в кавычки, здесь представляет в виде строки. Например, следующие двойные, заключенные в кавычки здесь, представляют в виде строки, мог бы вызвать Вас некоторое горе:
@"
$(get-process <some_core_os_process> | stop-process)
"@
где следующее безопасно:
@'
$(get-process <some_core_os_process> | stop-process)
'@
Это маловероятно Ваш здесь, строка содержала бы что-то настолько очевидное кроме простого $f, не решит ни к чему, т.е. это исчезло бы из исходной строки. Если, конечно, $f не был определен и установлен на что-то другое, чем пустой или пустой.