首页 > 解决方案 > 选择两年之间的日期

问题描述

我有两张桌子:

注:ID表中' Rents'是人的ID

我需要找到 2007 年有租金的人。

我的查询:

select * 
from person 
natural join rent 
where date(DATE, 'yyyy') > date(2006, 'yyyy') 
  and date(DATE, 'yyyy') < date(2008, 'yyyy');

但我收到以下错误消息:

ORA-00936:缺少表达式
00936。00000 -“缺少表达式”
*原因:
*操作:第 10 行错误:第 98 列

标签: sqloracle

解决方案


错误是内部日期方法中的内部日期变量date(DATE, 'yyyy')需要一些参数。我想你想在这个函数中有当前日期?然后使用:

date(CURRENT_DATE, 'yyyy')

推荐阅读