Kelvin Lawrence created TINKERPOP-3125: ------------------------------------------
Summary: Extend `asString` to allow just the date part of a datetime to be returned Key: TINKERPOP-3125 URL: https://issues.apache.org/jira/browse/TINKERPOP-3125 Project: TinkerPop Issue Type: Improvement Components: language Environment: Gremlin 3.7.x Reporter: Kelvin Lawrence It is sometimes useful to just have the date portion of a timestamp returned as just numbers (ISO 8601 style). For example consider ``` {code:java} g.inject('2024-02-14').asDate().asString(){code} ``` which yields ``` {code:java} Wed Feb 14 00:00:00 UTC 2024{code} ``` In some cases it would be nice to just get back `2024-02-14` We can write a query to do this mapping using the newer steps found in Gremlin 3.7.x but it is a lot of work to generate a slightly modified date string. ``` {code:java} g.withSideEffect('m',['Jan':'01','Feb':'02','Mar':'03','Apr':'04','May':'05','Jun':'06', 'Jul':'07','Aug':'08','Sep':'09','Oct':'10','Nov':'11','Dec':'12']). inject('2024-Feb-14','2024-Aug-17','2024-Jun-12','2024-Dec-24','2025-Jan-09').as('d'). format('%{_}-%{_}-%{_}'). by(substring(0,4)). by(select('m').select(select('d').substring(5,8))). by(substring(9,11)){code} ``` which yields ``` {code:java} 2024-02-14 2024-08-17 2024-06-12 2024-12-24 2025-01-09{code} ``` Perhaps we could consider allowing a way for `asString` to be parameterized in some way, or perhaps we could extend `format` to be date aware. -- This message was sent by Atlassian Jira (v8.20.10#820010)