【问题标题】:SQL how to pull out data which has commas without them?SQL如何提取没有逗号的数据?
【发布时间】:2016-09-22 08:28:50
【问题描述】:

在数据库中,用逗号将日期放入字段中,如20,151,112 (yy,yym,mdd) 代表日期12-11-2015

我需要取出日期并过滤它,以便我只有一段时间的记录。

你知道我怎样才能在没有逗号的情况下提取数据,这样我就有可以比较的整数了吗?

【问题讨论】:

  • 旁注:不要这样存储日期。
  • 我知道,我没有创建数据库...

标签: sql date parsing db2


【解决方案1】:

使用REPLACE删除逗号,然后使用TIMESTAMP_FORMATDATE转换为日期:

DATE(TIMESTAMP_FORMAT(REPLACE(col, ',', ''), 'YYYYMMDD'))

例如

SELECT DATE(TIMESTAMP_FORMAT(REPLACE('20,151,112', ',', ''), 'YYYYMMDD')) AS "theDate"
FROM yourTable

【讨论】:

  • 另一种解决方案是:SELECT CONCAT(SUBSTRING(dateField,1,3), CONCAT(SUBSTRING(dateField,4,4), SUBSTRING(dateField,8,3))) AS "date" FROM myTable
猜你喜欢
  • 2020-08-29
  • 2018-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-21
相关资源
最近更新 更多