Когда я использую код ниже, он получит результаты, начиная с сегодняшней и прошлой недели из базы данных.Perl и MYSQL. Могу ли я заменить now() на переменные?
коды:
my $sqlMySQL = "
SELECT LOT,DPPROGRAM,PROCESS,FILEMODDATE,COUNT(*)
FROM dc_fst_metadata
WHERE COMMENT='$comment'
AND ***FILEMODDATE between date_sub(now(),INTERVAL 1 WEEK) and now()***
GROUP BY LOT,DPPROGRAM,PROCESS";
Вопрос теперь я пытаюсь заменить сейчас() (это потому, что я хотел бы выбрать другой день и отслеживать обратно в 7 дней результаты вместо начала с сегодняшнего дня) с переменной и ничего не получает от db. Любое предложение или решение поместить в переменную?
коды после положить в переменной:
$datetime="2014-01-26 00:00:00"
my $sqlMySQL = "
SELECT LOT,DPPROGRAM,PROCESS,FILEMODDATE,COUNT(*)
FROM dc_fst_metadata
WHERE COMMENT='$comment'
AND ***FILEMODDATE between date_sub('$datetime',INTERVAL 1 WEEK) and '$datetime'***
GROUP BY LOT,DPPROGRAM,PROCESS";
Большое спасибо. P.s. Я новичок в perl и MYSQL.
Какая ошибка вы получаете? – dethtron5000
@ deathron5000 ничего не получает от db, но я уверен, что есть данные внутри db. Извините, что запутал вас, коды не получили ошибок. Теперь я изменяю поток. –
попытайтесь распечатать запрос SQL и запустить его через клиент mysql. Сообщите нам, если возникнут ошибки – user4035