Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取当前年度的总计-SQL_Sql_Ms Access - Fatal编程技术网

获取当前年度的总计-SQL

获取当前年度的总计-SQL,sql,ms-access,Sql,Ms Access,我需要在access数据库中使用SQL获取今年的总行驶里程。 目前,我正在尝试以下查询,但它不起作用: SELECT SUM(Mileage) FROM [Mileage-Expenses] WHERE YEAR(DatePurchased) = YEAR(CURRENT_TIMESTAMP) 有什么办法解决这个问题吗?我很久很久没有使用MS Access了,但据我所知,它不支持当前时间戳,您需要使用DATE()或NOW():

我需要在access数据库中使用SQL获取今年的总行驶里程。 目前,我正在尝试以下查询,但它不起作用:

   SELECT 
      SUM(Mileage) 
   FROM 
      [Mileage-Expenses] 
   WHERE 
      YEAR(DatePurchased) = YEAR(CURRENT_TIMESTAMP)

有什么办法解决这个问题吗?

我很久很久没有使用MS Access了,但据我所知,它不支持当前时间戳,您需要使用
DATE()
NOW()

   SELECT 
      SUM(Mileage) 
   FROM 
      [Mileage-Expenses] 
   WHERE 
      YEAR(DatePurchased) = YEAR(DATE())

我很久很久没有使用MS Access了,但据我记忆,它不支持
当前时间戳
,您需要使用
DATE()
NOW()

   SELECT 
      SUM(Mileage) 
   FROM 
      [Mileage-Expenses] 
   WHERE 
      YEAR(DatePurchased) = YEAR(DATE())

基于
年(购买日期)
WHERE
子句要求db引擎为表中的每一行计算该表达式。如果您还没有索引,则可以在
DatePurchased
上添加索引,然后使用
WHERE
子句,该子句允许db引擎在计算
总和(里程)
之前仅检索当年的行,从而获得更好的性能

选择
总和(里程)
从…起
[里程费用]
哪里
购买日期>=日期序列(年(日期()),1,1)
购买日期<日期序列(年(日期())+1,1,1)

基于
年(购买日期)
WHERE
子句要求db引擎为表中的每一行计算该表达式。如果您还没有索引,则可以在
DatePurchased
上添加索引,然后使用
WHERE
子句,该子句允许db引擎在计算
总和(里程)
之前仅检索当年的行,从而获得更好的性能

选择
总和(里程)
从…起
[里程费用]
哪里
购买日期>=日期序列(年(日期()),1,1)
购买日期<日期序列(年(日期())+1,1,1)

不工作是无效的错误消息-即使在MS Access中也是如此。您收到了什么错误?IErrorInfo.GetDescription因E_失败而失败(0x80004005)不工作是无效的错误消息-即使在MS Access中也是如此。您收到了什么错误?IErrorInfo.GetDescription因E_失败而失败(0x80004005)