Help

Re: Grouped by Multiple select should separate values not lump them together

5136 0
cancel
Showing results for 
Search instead for 
Did you mean: 
Samir_Ghosh
7 - App Architect
7 - App Architect

AirTable acknowledges that users like to create many views. What they do not understand is that while yes, views are critical, we are forced to create more views than we want for one key lacking feature (bug IMHO):

"Grouped by" view on “Multiple select” field does not separate the individual values

E.g., if a table has one record with “Product1” available in “USA” and a second record with “Product2” available in “USA”, “Canada”, then grouping by availability will currently yield two results, “USA” and “USA, Canada”. Instead it should show “USA” with Product1 and Product 2, and “Canada” with Product2.

USA

  • Product1
  • Product2

Canada

  • Product2

Of course, this gets much worse in real-world examples where you have larger numbers. The manual, painful workaround? Manually create a filtered view for each multiple select value. UGH!

 

Note: the UNNEST command in SQL uses an array field to create one row per array element

8 Replies 8
M_L
7 - App Architect
7 - App Architect

I agree. I was disappointed that when using Multiple Select I could not filter by a Single label, only with the same combination of Multiple’s Selected. I’d rather the Multiple Select be like “Labels” in Gmail where a record (i.e., email) can have 3 labels (USA, Canada, Mexico), but I can still click on “USA Label” to view all messages that have that label - even if they have other labels as well. In AirTable, it seems to exclude the “USA” labeled records if they have more than 1 record because I didn’t say “USA” and “Canada”…

Filtering by a single item—or an arbitrary combination of items—from a multiple-select field is possible (I do it frequently). Here’s an example of that type of filter setup:

Screen Shot 2021-09-04 at 11.31.45 AM

However, grouping by a multiple-select field currently groups by the entire contents of the field, not the individually-selected items. That’s because Airtable strictly adheres to the concept that a single record can only exist in one place when displayed in any view.

One way around this is to change the multiple-select to a linked record field. Using the earlier example of products and countries, you could make a [Countries] table with “USA” and “Canada” entries, and link products to them. Then you’d be able to see all products linked to either country.

Thanks for the response, I said “filter” but did mean “grouping” like you mentioned. I will keep this in mind!

David_Isaac
6 - Interface Innovator
6 - Interface Innovator

This would be very helpful to me as well.  Perhaps as a grouping option (x Repeat records in multiple groups)

Samir_Ghosh
7 - App Architect
7 - App Architect

"List View" is a limited option for addressing this somewhat.  It only works with linked tables not select fields, but you can easily convert a select field to a linked table.  Unfortunately, though, the List View only "groups" by the key field. 

Note: the List View can in fact show the same record in multiple places in the same view (e.g., if linked to more than one record in upper level table), so that seems not to be a valid reason for not displaying group by fields with multiple values separately.

mrvc
5 - Automation Enthusiast
5 - Automation Enthusiast

This would be so simple with a checkbox to 'separate multiple values'. Official response from airtable on following page has a poor workaround suggested — creating views for every multiselect item which would be super tedious!
https://support.airtable.com/docs/multiple-select-field

I suggest visiting that support article and responding to the page with feedback about how poor this suggested workaround is. 

Screenshot 2023-08-11 at 03.45.04.jpg

Hadi_Eldebek
5 - Automation Enthusiast
5 - Automation Enthusiast

This would be a great solution @mrvc@dashler78 please implement asap. 

Samir_Ghosh
7 - App Architect
7 - App Architect

SQL has UNNEST command that uses an array field to create one row per array element