to_date 정렬 dd / MM / yyy

Dec 18 2020

10/12/2020 13:14:39을 날짜 형식으로 변환하려는 문자열이 있습니다 (나중에 리팩터링 도구를 사용하여 수행합니다). 우선 시간이 폐기되고,이되도록이를 재정렬 할 필요 dd/MM/yyyy로 배치된다 yyyy/MM/dd.

필드 계산기를 사용하고 있습니다. 어떻게해야합니까?

나는 해봤 to_date("CreatedAt", 'dd/MM/yyyy')그리고 format_date("CreatedAt", 'dd/MM/yyyy')어느 쪽도 정확한 결과를 제공하지 않습니다.

답변

3 DaveX Dec 18 2020 at 02:19

datetime 문자열로 시작하므로 한 단계에서 전체를 구문 분석하고 결과를 일반 날짜 문자열로 형식화 할 수 있습니다.

format_date(to_datetime('10/12/2020 13:14:39',
   'dd/MM/yyyy HH:mm:ss'),
   'yyyy/MM/dd')

또는

format_date(to_datetime("CreatedAt",'dd/MM/yyyy HH:mm:ss'),'yyyy/MM/dd')

( Edit/Select/Select by Expression아래 창 에서 "미리보기 : '2020/12/10'"를 참고하십시오 .

QGIS to_datato_datetime표현식의 format속성 및 구문 분석에 대한 문서는 다음 과 같이 QT에 있습니다.https://doc.qt.io/qt-5/qdate.html#fromString-1 과 https://doc.qt.io/qt-5/qtime.html#toString. QGIS 표현식 함수 설명 텍스트를 통해 그 방법을 찾을 수 있습니다.

1 SpatialDigger Dec 18 2020 at 00:51

분명히 더 나은 방법이 있습니다. 무작위 추측 후에 이것을 얻었습니다.

Substr("CreatedAT",0,-9)
To_date("CreatedAt", format('dd/MM/yyyy'))
Format_date("EndDate",'yyyy/MM/dd')

나는 사람들에게 이것을 할 수있는 더 웅변적인 방법에 대한 기회를주기 위해 잠시 여기에 둘 것이다.