Best way to organize data where only some rows require additional notes?

Let’s say I have a list of Artist / Track / Link and I want to store it in Airtable. I know that would be easy with a 3 column table in some base.

But let’s say I wanted to add notes to some of the rows. For example, for some rows I might want to add extra information about the track. This would be for some rows but not all rows.

I know I could use a table with 4 columns, like this:

Track | Artist | Link | Notes

But if most of the Notes fields are going to be empty that seems like an odd/inefficient way to do this.

What is the best way to do this?
Thanks much.

That’s not inefficient — that’s how a database works! You can always create a view which hides the notes field if you don’t want to see it, but that would probably make things even more confusing.

Really? I’m no expert but I don’t think that is how all databases work. It seems pointless to have a column that will have tons of empty fields. Why not just store the data that’s wanted?

I feel like there is a 2 table solution here, I just don’t know what it is. If someone knows pls let me know!

So you want to create ANOTHER table with ANOTHER field, and then potentially link it to your first table for yet ANOTHER field (a lookup field)? Sounds super efficient. :joy:

If this is your motivational speaking technique in action then I would suggest you go back to the drawing board! :cowboy_hat_face:

Ha! I wasn’t trying to motivate you there, I was trying to stop you from overthinking the solution which you already figured out.

Now THIS is some of my motivational speaking technique in action:

Perhaps you can create a magic question about your database!

1 Like

I’ll watch your vid later…with a gin & tonic to take off the edge.

Returning to the problem…I contend I was not overthinking. I was merely offering what really amounts to a hack by way of illustrating I thought about the problem. I am sure there is someone who knows Airtable who could offer the “correct” way to do what I describe, rather than adding a mostly empty column to a table.

Perhaps — let’s see what ideas other people come up with!

Well, there you have it :expressionless::innocent:

1 Like

So the best solution is to add the extra column that contains mostly empty fields? Just trying to get to the right way of doing things!

Go ahead and add the extra column that will be empty for most records.

One of the beauties of Airtable is that it is easy to change the configuration of the base if you later decide on a different system.

While having “rivers” of empty cells is often an indication that you should examine the base schema, it does not always indicate a problem.

4 Likes

Thank you for stating a clear non-sarcastic solution.
Are you a motivational speaker by any chance???

Except that my very first response was very clear and non-sarcastic. Try looking through the thread to see where the snark started, and it didn’t start with me. :man_shrugging:

It started here. Look inward, Mr Motivation.

Which was in reply to your discourteous message here:

If you’d like high quality advice from the Airtable experts around here who are volunteering their time to help you, it would probably be helpful to be warm & gracious.

If you think that was discourteous you need to get out more often. It was sincere and honest probing, looking for the best solution.

You seem very easily triggered. Lapsing into a defensive and sarcastic safespace might make sense to you but it will not work with the overwhelming majority of people, a lot of whom I imagine could use some motivation to get their lives on track. This advice comes with no charge to you.

Let’s keep it friendly here guys :no_mouth:

@Heirtable, as @ScottWorld and @Heirtable are telling you the same thing, both being unbelievable Airtable experts, do you feel you have the answer to your question?

I’ll take a stab at this. :wink: But from a different perspective.

Imagine a database architecture where there are never “empty” fields. In fact, an underlying storage architecture that physically does not have any fields in a record unless there is data in those fields. This is the nature of a NoSQL database; it uses no storage or resources to store and manage null values, and null values are treated very different than empty strings and numbers. While the client may render such non-existent fields as if they exist, they really do not.

Optimization Proof

If you query a given record using the Airtable API, you will quickly learn that fields that have no values are simply not in the result set.

Do you still think it’s inefficient?

2 Likes

To be clear, this happens when you query Airtable’s REST API. When you query for a record using the Scripting or Custom Apps API, null field values are included as nulls.

The absence of the field in the query result from the REST API is not proof one way or another of how the underlying data is stored.

——

I suggest yet another point of view. Instead of thinking of what is the most efficient method of storing the data, what method of arranging the data best fits your workflows?

If having a column in the same table makes data entry quick and convenient, despite the large number of empty cells, do it.

If seeing lots of empty cells makes you uncomfortable, hide the field so you only see it in expanded view. Or put the data in a linked table if you don’t mind the extra work in dealing with a linked table. (However, if having lots of empty cells in Airtable bothers you, does having blank columns and rows in a spreadsheet also bother you?)

1 Like

Love it. This is true, but it intimates the likely underpinning, correct? If this were not true, do you think the API team would go to the trouble to make it look like the underlying architecture was efficient when it really wasn’t? :wink: