sql - Oracle SQL:如果不是日期,我如何列出字段?
问题描述
Oracle SQL:如果不是日期,我如何列出字段?
从不是日期(ColC)的表中选择 colA、colB、ColC、ColD
但它给了我错误,我不知道如何改写它......
解决方案
您可以使用Oracle Database 12.2 中引入的VALIDATE_CONVERSION函数。您可以WHERE VALIDATE_CONVERSION(...) = 0
查找任何不是日期的值。
WITH
sample_data
AS
(SELECT '2020-01-01' AS val FROM DUAL
UNION ALL
SELECT '2020-02-01' AS val FROM DUAL
UNION ALL
SELECT 'text' AS val FROM DUAL)
SELECT val, validate_conversion (val AS DATE, 'YYYY-MM-DD') AS isdate
FROM sample_data;
VAL ISDATE
_____________ _________
2020-01-01 1
2020-02-01 1
text 0
推荐阅读
- spring-boot - 使用 Flyway 迁移执行复杂的价值分配
- javascript - 在 Google Sheets 中使用数组公式并为 Google App Script 提取值
- ibm-cloud - 如何暂停 OpenWhisk 触发器
- xml - 我想重新格式化 xml 中的信息,这可以使用 xslt 实现吗?
- latex - 将自定义单词添加到 LaTex 中的交叉引用
- vba - 使用 VBA PowerPoint 删除单元格边框?
- routes - Discover / Autosuggest 和 calculateroute API 不会返回从同一点 a 到同一点 b 的相同距离
- git - Git拉取无限时间
- github - 如何从源代码安装 VSCode 扩展
- vue.js - 如何在 Vue 中的按钮 clic 上呈现表单?