Sql 如何从日期中查找值

Sql 如何从日期中查找值,sql,Sql,下面是我的表格数据,现在我想得到今天的地方税值,如何得到中间日期的值,我预计输出应该是5.5 Category LocalTax LocalStartDate LocalEndDate Frames 5 01-01-2011 31-12-2011 Frames 5.2 01-01-2012 31-12-2012 Frames 5.3 01-01-2013

下面是我的表格数据,现在我想得到今天的地方税值,如何得到中间日期的值,我预计输出应该是5.5

Category    LocalTax    LocalStartDate  LocalEndDate
Frames             5            01-01-2011   31-12-2011
Frames             5.2      01-01-2012  31-12-2012
Frames             5.3          01-01-2013  31-12-2013
Frames             5.5      01-01-2014  14-04-2014

通过此声明,您可以获得当天有效的税款

select LocalTax
  from YourTaxTable YTT
 where YTT.LocalStartDate <= getdate( )
   and YTT.LocalEndDate > getdate( )

在SQL Server中,使用GETDATE函数可以找到今天的日期和当前时间。 从GETDATE中剥离时间组件,以便与强制转换为GETDATE的日期进行比较

此外,您的localstart和endadte是dd-mm-yyyy格式,因此您需要将从getdate返回的日期值更改为相同的格式,即dd-mm-yyyy,以便进行正确的比较

SELECT LocalTax
FROM tableName
WHERE CONVERT(varchar(12), CAST(getdate() as DATE), 103) 
      BETWEEN LocalStartDate AND LocalEndDate 

这将适用于SYSDATE。您可能需要根据所使用的日期格式对其进行调整:

SELECT LocalTax
FROM table_name
WHERE SYSDATE BETWEEN LocalStartDate AND LocalEndDate;

您使用的是哪种数据库管理系统?博士后?神谕