是否可以在批处理脚本中使用条件语句?
例如:
我有两个服务器,S1和S2.当批处理文件在S1中部署时,输出应该在位置L1生成.同样,如果在S2中部署批处理文件,则应在位置L2中生成输出.
我的剧本:
set ComputerName=S1
set RepServer=%ComputerName%
set DBServer=%ComputerName%
set ReportPath="/DEV/Clearviewbilling"
set SharedPath=\\scottvdr1\ClearviewBilling\DEV-TEST
set UserId=-E
set fn=Create_Log.txt
if exist %fn% del %fn%
@echo on
@rem Reports
rs -i "%CD%"\Reports\Create_Sub.rss -s http://%RepServer%/reportserver -v Path=%SharedPath% -v rootpath=%ReportPath% -v DBServer=%DBServer% -t >> %fn% 2>&1
Run Code Online (Sandbox Code Playgroud)
但我希望脚本是:
set ComputerName=S1
set RepServer=%ComputerName%
set DBServer=%ComputerName%
If ComputerName=S1
Set SharedPath=//blah/blah
else
Set sharedPath=//some/path
set ReportPath="/DEV/Clearviewbilling"
set UserId=-E
set fn=Create_Log.txt
if exist %fn% del %fn%
@echo on
@rem Reports
rs -i "%CD%"\Reports\Create_Sub.rss -s http://%RepServer%/reportserver -v Path=%SharedPath% -v rootpath=%ReportPath% …Run Code Online (Sandbox Code Playgroud) 我需要创建一个SSIS包,它将在一个table(T1)超过3个月(基于ALERT_TIMESTAMP)的记录中查看记录并将它们移动到另一个记录中table(T2)
我的查询是:
SELECT * FROM T1
WHERE (DATEDIFF([month], ALERT_TIMESTAMP, GETDATE()) > 3)
Run Code Online (Sandbox Code Playgroud)
Alert_timestamp列Datetime格式.例如:'10/26/2012 12:00:00 AM'
当我运行查询时,它应显示超过3个月的所有记录,但事实并非如此.