So you seem to have found a solution you like using file.cday and/or file.mday, but I would just like to showcase some new functionality within dataview which actually is capable of handling that custom date format of yours, and transform that into a date known by dataview.
My test file had the following content:
First Created: 07.06.2023 Wednesday 18:53:50
Last Modified: 07.06.2023 Wednesday 18:56:52
TABLE WITHOUT ID row["First Created"], firstDate, dateformat(firstDate, "yyyy-MM-dd")
FLATTEN row["First Created"] as first
FLATTEN date(first, "dd.MM.yyyy cccc HH:mm:ss") as firstDate
WHERE file = this.file
In other words, if you’re using date(datestring, formatstring) you can parse a text version of a date, according to the specificed formatstring. Do however note that this formatstring uses Luxon datetokens, and not moment datetokens.
So the moment variant of DD.MM.YYYY dddd HH:mm:ss is equivalent to the luxon variant of dd.MM.yyyy cccc HH:mm:ss. This is confusing, but still having the ability to use date(datestring, formatstring) to get a proper date is a very interesting prospect of ver 0.5.56 of Dataview.
In summary, since v0.5.56 we can convert text version of dates using this new variant of date() (using Luxon tokens), to make dates that Dataview understands. However, it’ll usually still would be better to use ISO8601 format, that is YYYY-MM-DD, to help the date handling in multiple of the plugins of Obsidian.
>[!example]- Files created today
>TABLE without ID status as Status, class as Class, file.link as File
>WHERE file.cday = date(this.date_created) and class !="daily-note"
>SORT file.ctime desc