Search operator for creation and modified dates to filter by time

Use case or problem

Are there any date criteria in Search? Something like: modified:(>2021-08-01) … or created:(<2021-04-01)

Could be super handy especially as our Vault’s grow and time goes on. “I know I want to find something from several months ago” so can pre filter out some of the noise. Or “I know I did this in the last 2 weeks and want to search with a pretty generic / ambiguous keyword that will return a ton of results but filtering for just notes modified or created in the last 2 weeks would remove all the noise”

Proposed solution

Creating the following two search operators and allowing for use of greater than and less than operators.

modified:()
created:()

A preferred advanced feature would be allowing for “dynamic” natural language date options like “last 30 days”… “last year” … “last month” … “next week” … “10 days ago” … “2 weeks ago”

Some other use cases for this feature

I am actually not thinking about it for PM at all. I handle that already by having [[daily note page]] date links with all my tasks so I can build complex search queries to do that kind of stuff. My main use case is that I am in IT Consulting. So I talk with many clients about a lot of the same stuff/topics. Often I know I have recently talked about something but it is a very general keyword I use a lot like “Azure” or “Proposal”. So if I search either of those keywords then I get hundreds of results and don’t even know where to start. So if I could pre filter my search for just files modified in the last 14 days lets say, because I know it was in the last couple weeks, then I will have a much better chance at quickly finding what I was looking for.

Or it may have been something I know I talked with a client last year but can’t remember which client it was or when it was exactly. I can weed out all the recent stuff and just see results from 6-12 months ago for example. I would use this all the time.

Or I could embed a search query on each of my [[Client]] pages and have the query show all the notes in the last 30 days. So I can quickly see the recent meetings and things I have done with them when preparing for my next meeting.

38 Likes

Adding a few additional use case questions that this could add value for.

  • What did I learn between X & Y?
  • What did I read between X & Y?
  • What did I watch between X & Y?
  • What did I write between X & Y?
  • What did I archive between X & Y?
5 Likes

Another use case:

I can’t tell you the number of times working a multi-year project where I knew I had a relevant file or update last year between January and April, and some level of search criteria helped. Being able to pinpoint, or filter out the noise, is helpful. Especially for review times.

4 Likes

to get around this I start every new note with a template that prefills the date for me. Since every note will now have that date written in it…now I just have to search for ex.2021-11-21. and all notes with this date will show in search results.

For your problem what if you did something like this…
have a separate note in obsidian that has all the dates in the year listed chronologically. Something like below…
“2021-11-20” OR “2021-11-21” OR “2021-11-23” OR “2021-11-24” etc…

And then you can copy the selected days you’re looking to search for and paste into the search field.

For the modified date problem, every time you go into a note and change it…you would just have to remember to change the date to the new date. That would be a quick template keyboard shortcut. ctrl d or whatever you set that as.

I envision this also as a graphing filter feature. At the bottom of the graph view i coud see a timeline bar from oldest to newest post where I would like to be able to grab and move a start and end marker to focus on a specific time period. Propably whith some nifty quick buttons like “week”, Month and Year to set fixed time window sizes. In my imaginary feature there would also be the possibility to select filtering by “creation date”, “modified date” and “content”, where content searches for all recognized date formats in the .md and just interprets them to instances on the timeline (since we dont seem to have a proper unified way of marking down dates and times at present, maybe that is a feature request too…).

3 Likes

I’m also looking for this feature on the graph view. I want to see something between the local graph and the global graph - a way to view all the nodes modified in a certain date range as well as 1-, 2-, or 3-level deep links. I’m looking for patterns in my thinking over a week or a month that may need explicit connections or may lead to new unexpected connections.

2 Likes

+1
Bear.app has a search query @lastndays that shows notes that have been created / modified in the last n days.
That alone is already enormously helpful if one uses many folders.

One more +1 here. This would be extremely handy for a kind of spaced repetition or time-specific searching. But also I have enjoyed using a smart folder containing all files modified in the past 72 hours as my default in iA Writer on mobile. If I am quickly jotting something down on the go, chances are it’s either a new note or something I have touched recently.

+1 vote

1 Like

I came here to ask for this specifically. It would be so helpful in graph view. Sometimes it’s a tangled mess and a slice of time would be the perfect cross-section. Other times it’s desirable see how things Created or Modified over the course of N-Steps (hours, days, weeks, months, etc) connect to other notes in the same window of time, starting from the present or any other time.

If we’re talking about Modified and Created filters, beyond date, time would also be handy. For example, if I woke up in the middle of the night and jotted down a thought, I could find that note and others like it by filtering between 1 AM and 6 AM. I hope I’m not stepping outside the scope of the original request (not sure what @smurfman111 meant by PM). I can put in a separate request if this part adds noise to the essence of the original request.

Currently I’m using flat view or advanced search in Directory Opus to get this and similar types of information.

1 Like

Sorry, I just meant for “Project Management” :slight_smile:

1 Like

+1 vote

It’s not the solution, but 'Another Quick Switcher" plugin has recent search, which quickly became my main way of navigating a bunch of current notes.

Also TfTHacker’s Dashboard++ css tweak has a nice Dataview recently-changed-files component.

+1 for a search operator that selects for a created or modified date range that you can also use in graph view as well as search.

1 Like

+1, I would love to make a query into my daily note templates that lists all notes created on that day.

I’ve switched from Onenote to Obsidian and I really miss Onenote’s ability to find what I did by “yesterday”, “last week”, “last 14 days” etc.

My work-around is to date-stamp as I enter using the “natural language dates” and assign the insert of a date to a hot key. Then you can search by day-month (22-12) or month-year (12-2022) if the day happened to be 22-12-2022.

I use dates for other things besides when I did work. Consequently, you do not want to find ‘all’ dates with a certain string value. To get around this I’ve begun to use Natural Language Dates with a hotkey for one format and use their ‘Date Picker’ feature (on another hotkey) in order to insert a date with another format. Thereby achieving searchable date stamps for different purposes.

When your vault grows, locating by date becomes increasingly important, if not even critical at times.

1 Like

Another approach is to use an app like File Locator Pro (or Agent Ransack as its free version is called). With that tool you can quickly find changes to md files ‘after’ or ‘before’ a modified date. You can also look for the ‘created’ date in the same manner. The searches can look in all md folders and subfolders.

You can also search within a file for date/text strings at the same time of doing a date search.

To go one step further, you can do text search using operators like AND NOT NEAR and others. You can also specify just how NEAR you want the words to me by specifying NEAR:20.

For programmer types you can create very complicated text searches using standard REGEX expressions.

+1 for this search operator

+1 on this

+1 on this. Essential for many review workflows, since sorting search by edited/created date is possible this doesn’t seem like a big project to implement.