日期 ETL 的大查询正则表达式

     2023-04-14     134

关键词:

【中文标题】日期 ETL 的大查询正则表达式【英文标题】:Big Query Regex for Date ETL 【发布时间】:2017-03-01 12:18:07 【问题描述】:

我在 Big Query 中导入日期信息的数据,格式为 2/13/2016 、 3/4/2012 等

我想将其转换为日期格式,例如 02-12-2016 和 03-04-2012。 我想使用查询来创建一个新列并使用正则表达式。

我知道匹配 2/4/2012 的第一部分 (2) 的正则表达式类似于

^(\d1)(/|-)

Reg ex 将第二部分与 / 匹配将是

(/)(\d1)(/)

我想知道如何使用这 2 个正则表达式以及 REGEXP_EXTRACT 和 REGEXP_REPLACE 来创建一个具有正确格式的这些日期的新列。

【问题讨论】:

【参考方案1】:

转换为DATE 类型的列可能是最简单的。例如:

#standardSQL
SELECT
  PARSE_DATE('%m/%d/%Y', date_string) AS date
FROM (
  SELECT '2/13/2016' AS date_string UNION ALL
  SELECT '3/4/2012' AS date_string
);

另一种选择——如果你想将日期保留为字符串——是使用REPLACE

#standardSQL
SELECT
  REPLACE(date_string, '/', '-') AS date
FROM (
  SELECT '2/13/2016' AS date_string UNION ALL
  SELECT '3/4/2012' AS date_string
);

【讨论】:

SELECT PARSE_DATE('%m/%d/%Y', date_string) 为我们工作.. 非常感谢 Elliot 如果这对您有用,请接受(并可选择投票)答案。您可以在*** help center 中阅读更多内容。谢谢!

日期范围的正则表达式自定义搜索查询

】日期范围的正则表达式自定义搜索查询【英文标题】:RegexCustomSearchqueryfordateranges【发布时间】:2019-06-2320:13:16【问题描述】:我有一个带有搜索页面的MVC.netWeb应用程序。我希望用户能够按给定年份搜索记录,例如1979.但是我... 查看详情

干货|logstash自定义正则表达式etl实战

...ok数据结构化ETL实战上,并专注于在Grok中使用自定义正则表达式。有时Logstash没有我们需要的模式。幸运的是,我们有正则表达式库:Oniguruma。Oniguruma是一个灵活的正则表达式库。它包含多种语言的不同正则表达式实现的特性。G... 查看详情

用于获取不同日期以及唯一计数最大值的大查询

】用于获取不同日期以及唯一计数最大值的大查询【英文标题】:BigQueryforfetchingDistinctDateandalsoMaxoftheUniqueCount【发布时间】:2019-03-2913:23:08【问题描述】:我有两次相同的日期,因为我有不同的唯一计数和小时。我想获取唯一和... 查看详情

使用正则表达式在 Pandas 数据框中字符串开头的大括号内去除数字

】使用正则表达式在Pandas数据框中字符串开头的大括号内去除数字【英文标题】:UsingregextostripnumbersinsidecurlybracesatthestartofthestringinaPandasdataframe【发布时间】:2021-02-1120:07:46【问题描述】:我有一列熊猫数据框(df)。它看起来像这... 查看详情

来自 MySQL 的大数据的推荐 ETL 解决方案?

】来自MySQL的大数据的推荐ETL解决方案?【英文标题】:RecommendedETLsolutionforbigdatacomingfromMySQL?【发布时间】:2020-02-0522:29:31【问题描述】:我有一种情况,第三方将数据存储在日常表中,如果记录数超过200万,则会创建后续表,... 查看详情

日期区间正则表达式生成模块

...给定开始日期和结束日期,返回匹配该段日期区间的正则表达式。生成的正则表达式假定了每个月都有39天,即01-39,所以不要使用该模块来判断日期的合法性。该模块生成的正则表达式的使用场景是从一组合法日期中提取给定... 查看详情

带有日期时间的 MongoDB / Pymongo 查询

...mongo插入到mongodb中的数据。我的插入代码如下(通过正则表达式解析后)ifconnectionisnotNone:db.model.insert("time":datetime.datetime(int(int3) 查看详情

日期时间格式正则表达式

日期时间格式正则表达式 本文章已收录于:  正则表达式(?n:^(?=d)((?<day>31(?!(.0?[2469]|11))|30(?!.0?2)|29(?(.0?2)(?=.{3,4}(1[6-9]|[2-9]d)(0[48]|[2468][048]|[13579][26])|(16|[2468][048]|[3579][26])00))|0? 查看详情

多种日期格式的正则表达式

】多种日期格式的正则表达式【英文标题】:Regexformultipledateformats【发布时间】:2021-09-0420:56:42【问题描述】:什么正则表达式可以匹配这种日期格式:2012年10月16日?我有一个看起来像这样的熊猫系列:02012-05-2500:00:0012012-08-280... 查看详情

正则表达式波斯日期验证

】正则表达式波斯日期验证【英文标题】:RegexPersianDatevalidation【发布时间】:2018-01-2902:47:15【问题描述】:我想要一个正则表达式来验证波斯日期,例如1396/4/3、1396/12/08或其他。换句话说,我想确保波斯日期的格式(如String)... 查看详情

用于验证日期的正则表达式 [重复]

】用于验证日期的正则表达式[重复]【英文标题】:regularexpressionforvalidatingdates[duplicate]【发布时间】:2013-11-0218:36:39【问题描述】:我想知道是否有一个正则表达式模式可以验证信用卡到期日期是否早于今天。在我的表单中,我... 查看详情

python日期正则表达式(代码片段)

查看详情

正则表达式日期验证格式

】正则表达式日期验证格式【英文标题】:RegexDateValidationFormat【发布时间】:2014-03-2209:44:14【问题描述】:谁能帮助我如何将这个jquery验证的日期格式从YYYY-MM-DD更改为MM/DD/YYYY。例子:2014-02-21mustbe02/21/2014我试图改变这个:newRegE... 查看详情

使用 python 正则表达式匹配日期

】使用python正则表达式匹配日期【英文标题】:matchdatesusingpythonregularexpressions【发布时间】:2012-04-1605:42:11【问题描述】:我想匹配具有以下格式的日期:2010-08-27,2010/08/27现在我对日期的实际可行性并不是很特别,但只是它的格... 查看详情

正则表达式验证 UTC 日期时间格式

】正则表达式验证UTC日期时间格式【英文标题】:regextoverifyUTCdatetimeformat【发布时间】:2014-10-2310:58:11【问题描述】:我想验证日期时间格式,例如“2014-08-29T06:44:03Z”,为此我正在寻找一个正则表达式。尝试了几种组合,但这... 查看详情

简单的正则表达式日期验证

】简单的正则表达式日期验证【英文标题】:simplyregexdatevalidation【发布时间】:2016-03-0715:46:23【问题描述】:我正在尝试为我的mvc应用程序创建简单的正则表达式验证。我试过了:[Required][RegularExpression("(\\\\d\\\\d\\\\/\\\\d\\\\d\\\\/\... 查看详情

可变日期长度的 Java 正则表达式模式

】可变日期长度的Java正则表达式模式【英文标题】:JavaRegexPatternforvariabledatelength【发布时间】:2019-08-2409:03:16【问题描述】:需要:设置一个正则表达式模式来提取作为字符串子集的日期信息。问题:月份和日期不是固定长度... 查看详情

javascriptjson日期格式正则表达式(代码片段)

查看详情