sql - ORA-01722: 无效号码 #time
问题描述
我在我的 Oracle 中运行下面提到的查询,我得到ORA-01722: invalid number #time
.
select *
from time_checker
where to_char(time,'HH24:MI')
not between to_char('01:00','HH24:MI') and to_char('02:30','HH24:MI');
解决方案
查询的正确版本是
select * from time_checker where time not between
to_date('01:00','HH24:MI') and to_date('02:30','HH24:MI');
这time
是您正在检查的字段。所以理想情况下,您必须将参数 '01:00' 等转换为 column 的数据类型time
。
如果time
column 是 type timestamp
,则使用to_timestamp
.
推荐阅读
- javascript - 当该用户的会话过期时删除当前登录的用户
- python - 如何使用 Python 在 PDF 文档的特定字段中添加签名?
- java - Solr + Tomcat 集成 - SolrRequestParsers 无法获取多部分以删除它们 => java.lang.IllegalStateException
- ssis - Microsoft SSIS SQL Server 集成服务安装错误 Visual Studio 2019
- python - 在 django rest 框架中创建对象时,将用户数据传递给嵌套序列化程序中的序列化程序
- performance - 从 Cassandra 填充缓存的正确方法
- php - PHP 将带有子数组值的数组连同其键一起发送到函数
- javascript - 尝试在终端中安装材质 UI 时出现错误
- amazon-web-services - 支持通配符查询、Amazon Kendra 中的 n-gram 标记化
- pycharm - PyCharm 默认折叠/折叠功能