sql - 选择两年之间的日期
问题描述
我有两张桌子:
- 人(ID、姓名、年龄)
- 租金(ID、日期、持续时间)
注: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 列
解决方案
错误是内部日期方法中的内部日期变量date(DATE, 'yyyy')
需要一些参数。我想你想在这个函数中有当前日期?然后使用:
date(CURRENT_DATE, 'yyyy')
推荐阅读
- android - 修复元素大小并在其上添加 ScrollView
- mysql - 如果一列条件匹配,则 MySQL 插入或更新
- php - 使用 PHP 解码字符串
- mysql - 可以对数据库表进行排序以使 NULL 值出现在底部吗?
- php - 如何调试数字代码和中的问题?
- python - 使用 croniter 根据计划时间运行 python 脚本
- javascript - 如何使用angularjs而不是css来更改字体颜色选择选项?
- java - 随着 hibernate.c3p0.max_size 的增加,连接数似乎没有增加
- laravel - Laravel 迁移:刷新身份验证问题
- android - android linearlayout 和 textview wrap_content 导致剪切最后一行文本