它是啥样的 SQL? TODATE()、TOCHAR()、isdate 格式()
Posted
技术标签:
【中文标题】它是啥样的 SQL? TODATE()、TOCHAR()、isdate 格式()【英文标题】:what kinda of SQL is it? TODATE(), TOCHAR(), isdateformat()它是什么样的 SQL? TODATE()、TOCHAR()、isdate 格式() 【发布时间】:2017-11-14 07:51:36 【问题描述】:我正在开发一个聚合器,它包含我不熟悉的内置函数。我在这里列出的这些很少,有人知道它是什么SQL格式吗?
TODATE(string, in_format[, out_format])
ISDATEFORMAT(value[,date_format])
TOCHAR(numeric_value)
另外,这是我使用它的方式,它确实接受了我的语法,但它没有返回正确的值。
count(where text_column != TODATE('date_format','YYYY-MM-DD', 'yyyymm'))
【问题讨论】:
你的数据库是什么? @Indent:我认为这是 Steven 的问题 我尝试用 Google 搜索ISDATEFORMAT()
和 TOCHAR()
,但我没有找到任何使用这些功能的特定数据库。我唯一找到的是Visual Basic
或C#
。您能否发布整个查询和“环境”,即您是从 Management Studio 作为查询还是从脚本进行调用?
DB 它是一个 Oracle,但我使用的是一个名为“Trinity JFDesigner”的工具,这种工具非常罕见。我认为这是一个数据集成工具。 us.trinity-data.com
@StevenHuang 你为什么要问你使用哪个系统,当你知道它是 Oracle 的时候?那应该在 OP 中。
【参考方案1】:
对于TODATE(string, in_format[, out_format])
你可以使用TODATE('20171114','YYYYMMDD')
对于ISDATEFORMAT(value[,date_format])
ISDATEFORMAT("2017-06-15", "%M %d %Y")
和tochar
函数将数字或日期转换为字符串。例如
TO_CHAR(1210.73, '9,999.99')
Result: ' 1,210.73'
【讨论】:
我知道每种方法的工作原理,但它对我的目的没有任何好处。我想将文本与日期进行比较并返回数字数据类型..【参考方案2】:最后我发现了行代码: sum(DECODE(text_column, DATETOCHAR('date_column','yyyy-mm-dd','yyyymm'),0,1))
所以在我原来的问题之上添加。函数'Datatochar'是什么类型的SQL!?
【讨论】:
以上是关于它是啥样的 SQL? TODATE()、TOCHAR()、isdate 格式()的主要内容,如果未能解决你的问题,请参考以下文章