我在SSIS
包中设置了一个变量,我使用这个表达式:
DATEPART("yyyy", GETDATE())*10000
+ DATEPART("month", GETDATE())*100
+ DATEPART("day",GETDATE())
表达式会给我一个变量值,例如' yyyymmdd'。我的问题是我想要昨天约会。
例如2014年11月1日应该是20141031
答案 0 :(得分:7)
您可以使用DATEADD
功能
你的表达是:
DATEPART("yyyy", DATEADD( "day",-1, GETDATE()))*10000 + DATEPART("month", DATEADD( "day",-1, GETDATE())) * 100 + DATEPART("day", DATEADD( "day",-1, GETDATE()))
答案 1 :(得分:3)
少了代码......
CONVERT(varchar(8), DATEADD(dd,-1,GETDATE()),112)
答案 2 :(得分:1)
这将给出昨天的日期
(DT_WSTR, 4) YEAR(DATEADD("day",-1,GETDATE()))
+RIGHT("0" + (DT_WSTR, 2) DATEPART("MM", DATEADD("day", -1, GETDATE())),2)
+RIGHT("0" + (DT_WSTR, 2) DATEPART("DD", DATEADD("day", -1, GETDATE())),2)
答案 3 :(得分:-1)
以下示例给出了昨天的日期和小时和分钟: 2015-09-06-14-40
$newSheet=$objPHPExcel->createSheet();
$objPHPExcel->setActiveSheetIndex(1);
$newSheet->setTitle("CountriesList");
$objPHPExcel->setActiveSheetIndex(1)
->SetCellValue("A1", "UK")
->SetCellValue("A2", "USA")
->SetCellValue("A3", "CANADA")
->SetCellValue("A4", "INDIA")
->SetCellValue("A5", "POLAND")
->SetCellValue("A6", "ENGLAND");// Drop down data in sheet 1
$objPHPExcel->addNamedRange(
new PHPExcel_NamedRange(
'countries',
$objPHPExcel->setActiveSheetIndex(1),
'A1:A6'
)
);
$objPHPExcel->setActiveSheetIndex(0)->SetCellValue("A1", "UK");
$objPHPExcel->setActiveSheetIndex(0);// Drop down in sheet 0
$objValidation = $objPHPExcel->getSheet(0)->getCell('A1')->getDataValidation();
$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST );
$objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION );
$objValidation->setAllowBlank(false);
$objValidation->setShowInputMessage(true);
$objValidation->setShowErrorMessage(true);
$objValidation->setShowDropDown(true);
$objValidation->setErrorTitle('Input error');
$objValidation->setError('Value is not in list.');
$objValidation->setFormula1("=countries");
答案 4 :(得分:-1)
(DT_WSTR, 4) YEAR(GETDATE()) +RIGHT("0" + (DT_WSTR, 2) MONTH(GETDATE()),2) +RIGHT("0" + (DT_WSTR, 2) DATEPART("DD", DATEADD("day", -1, GETDATE())),2)
以上也会在前一天给你约会。执行加号或减号的主要问题在表达式中给出截断错误。
RIGHT("0" + (DT_WSTR, 2) DATEPART("DD", DATEADD("day", -1, GETDATE())),2)
不会破坏表达。