Excel/Notion-like databases

What would be really cool would be being able to use notion-like databases in logseq.

In obsidian, there is dataview but development has slowed and they haven’t incorporated column-wide data processing, neither can you edit content from within tables. It’s non-existent in roam except for a scanty alpha version of calculator.

My idea being that each block being its own table cell, and being able to access each cell regardless of where it is through block referencing. And being able to use formulas like concatenation, subtraction, string splitting, conditional loops, and so on. It would make logseq infinitely more powerful and grab a huge share of the notion market.

It is the reason I came to and still am in Notion. It’s even better than airtable!
Markdown tables always suck, so I see no suitable text representation.

2 Likes

I think it can be represented, it just requires a rethinking of how it would be represented instead of a traditional markdown table. We could brainstorm it here in case a developer decides to take on the challenge.

1 Like

Bumping this… not sure if this would ever be implemented but I’d be willing to raise a bounty :stuck_out_tongue:

3 Likes

Yes yes yes, so much yes. I will hire someone/contribute to a bounty to see this happen!

3 Likes

I tried something like this before. Will be quite tedious to include all the mathematical equations available out there.

output

4 Likes

Would it be possible to have user created formulas (like in notion)?

1 Like

Sorry I don’t use formulas in Notion.

Do you have an example please?

1 Like

Sure! Here’s an example:

The power of formulas lie in how people can customise them to their own needs. You can concatenate other columns, take the sum of other columns, split them, create Booleans, etc.

2 Likes

There is a new approach on this

1 Like

I’m also interested in this but with a completely different take.

Logseq uses a graph database and pretty much any and all data can be expressed as a graph.

For example, if I have a task and that task has sub tasks and belongs to a project with a given due date, all of these can be specified as relationships in a graph.

We might choose to represent this data in log seq in outline form by creating a project page and then adding the task as a child of that page and its subtasks as children of that task and the due date as as a property and status as a checkbox.

It is easy to take a csv with a row of tasks and a column for project and due date and relabel them as “parent” and “property” …

But do you really want to create your data in table form?

What if we could do the reverse and label blocks as task and then relabel the parent as “project” or perhaps label a block as a “project node and then infer that all “children” with a status are tasks.

Once we have relabeled these relationships to something meaningful then perhaps we could create alternative views from these relationships, eg table, kanban, or simply change the outline structure to group tasks by status or due date instead of project labelling project as a property rather than a parent and instead of being some read-only view might be able to change due date by moving the block from one parent to another or simply changing the value of the due date block — bulk edit made easy — and then perhaps change the view back to project view.

I love how notion allows tabular data to be visualized in many different ways, but I think logseq graph db has even more possibilities than notion.

Its already possible to add custom properties that could indicate a block type and then write queries to navigate relations to build new views of data, but Im not really sure yet how to make this configuration more user defined and dynamic if you want to change relationship structure to have it update config and/or data.

I also wonder if logseq might be too flexible where it is hard to enforce modeling constraints such as due date must be a date and what do you do with invalid data or extra or invalid data when you want to use a different representation where you don’t want that data displayed. Perhaps logseq could support some sort of hidden block attribute for plugins to use or maybe the plugin store extra data externally and link with block id.

Not sure all the details, but Im really curious to explore the multiple representations of a graph rather than just visualizing a table

6 Likes

Very interested in this as well.

Seems like so far, no tool has combined relational database-like support (like Notion and Anytype.io) with extensive flat linking capabilities (like LogSeq, Roam and Obsidian).

1 Like

The older version of Tiddlywiki can do this: http://twdb.tiddlyspot.com/#DataTiddlerPlugin

and the latest version of Tiddlywiki has something similar : Shiraz 2.4.6 — create stylish contents in Tiddlywiki

Have you tried LuckySheet GitHub - mengshukeji/Luckysheet: Luckysheet is an online spreadsheet like excel that is powerful, simple to configure, and completely open source.? Even more powerful than Notion. You basically get Excel functionality and all data is local in a file.

There is a Logseq Plug-in.

3 Likes

The plugin is this one, right?

But does it just embed a spreadsheet or is there some kind of integration with the content we put in Logseq?

Logseq already has a database-like data structure and that’s page/block properties::, visualized using queries, but it lacks three things:

  1. More types of visualizations other than lists and tables
  2. Editing data directly from these visualizations
  3. Functions like the mathematical ones

A spreadsheet embedded in Logseq sure has its use cases but it’s not really what people want to fill the gap with Notion.