我正在尝试使用以下脚本检查来检查当前是否在表中添加了最新行:
import pandas as pd
df_test['SaleDate'] = pd.to_datetime(df_test['SaleDate'])
在添加格式之前,expand属性可以很好地工作,可以使我获得最新的UPDATE_TIME值
$updateTime = "SELECT TOP 1 FORMAT([UPDATE_TIME], 'M/d/yyyy h:mm tt') FROM [dbo].[$Table] ORDER BY UPDATE_TIME DESC" |
Select -ExpandProperty UPDATE_TIME;
但是,当我向查询中添加$updateTime = "SELECT TOP 1 [UPDATE_TIME] FROM [dbo].[$Table] ORDER BY UPDATE_TIME DESC" |
Select -ExpandProperty UPDATE_TIME;
时,会导致此错误:
选择:找不到属性“ UPDATE_TIME”。
- ... ble] ORDER BY UPDATE_TIME DESC“ |选择-ExpandProperty UPDATE_TIME;
我需要使用FORMAT
,因为我想忽略秒数,或者如果没有了,我可以忽略FORMAT
值和UPDATE_TIME
值之间的1秒差异,那会变得更好。
Get-Date
答案 0 :(得分:4)
PowerShell控制台是否将字符串作为SQL查询自动执行? PowerShell通常不这样做。
无论如何,假设您的PowerShell实例实际上是这样工作的,则使用FORMAT()
函数(或其他函数)会更改结果列的标题,而该列又将成为输出对象各自属性的名称(s)。因此,UPDATE_TIME
属性在这些对象上不存在,因此无法扩展。
您需要定义一个列名来解决此问题:
SELECT TOP 1 FORMAT(...) AS UPDATE_TIME ...