Knowledge Base

Many-to-Many Relationships in Quickbase | INTERMEDIATE

June 25, 2019
EDITORS NOTE: If you are new to creating relationships or have not read our article on One-to-Many Relationships, please visit our article: Setting up a New Relationship to learn more.

Topics:

✓ What is a Many-to-Many Relationship?

✓ How to set up a correct Many-to-Many Relationship Structure.

✓ How to create a Many-to-Many Relationship with a Join Table.

✓ How to use a Many-to-Many Relationship.

✓ How to create multiple records from the Join Table.

What Is a Many-to-Many Relationship in Quickbase?

A Many-to-Many Relationship is a relational structure comprised of two separate one-to-many relationships connected by a Join Table (Intermediate table) that allows two tables to act as though they are both master and details tables, allowing records from either table to be a parent to the other table’s records.

EDITORS NOTE: Throughout this article, we will be using the example of Students and Classes to help illustrate a Many-to-Many Relationship. If you’d like, follow along in Quickbase by creating a students and classes table.

In theory, students can have many classes, and classes can have many students. There is a correct and incorrect way of creating this relationship. The upcoming examples will illustrate both methods:

Incorrect Many-to-Many Method

In this example, you can see that both students and classes are related to one another and represent information passing to each other similar to how cars move on a two-lane highway.

Ultimately, this method is not ideal and creates duplication of work in Quickbase.

a diagram of a cell phone with a battery attached to it

Correct Many-to-Many Method

In this example, we have created a Join Table. It’s a third table that helps connect data from the two tables you are trying to connect.

To help further illustrate, our students and classes table both contain lists of information.

The join table allows us to take the information from both the students and classes tables and create every combination of classes to students or students to classes with that information.

a whiteboard with a green arrow and a blue arrow
BEST PRACTICE: When creating a join table, it’s best practice to name the join table something that relates to both tables connected to it.

For example, our join table for students and classes could be called “Registrations” or “Assignments.”

How to Create a Many-to-Many Relationship

  1. Create a new table to serve as the join table.
a black and white sign that says students, classes, new table
  1. You will want to add a new table to your application and provide an appropriate name.
the new table page on a mobile device
  1. Create a relationship between the new table and the existing tables.
a screenshot of a tablet with a diagram of a table

In our example, we created a One-to-Many Relationship between Classes and Registrations (above) and a One-to-Many Relationship between Students and Registrations (below).

a screenshot of a web page with a question box
  1. Add lookup fields to the relationship.
a screenshot of a table - to - table relationship
EDITORS NOTE: If there are fields in the existing tables that track information that’s now in the new join table, you’ll want to remove those fields.

For example, a class field in the students table that you’ll no longer use. By removing these fields, you will avoid duplicate information.

Using the Many-to-Many Relationship

1. Once you establish your join table and have both related tables connected, you can add information through the newly created join table. For example, if you want to register a new student into a class, you would add a new record to the Registration table.

a new registration button on a cell phone

2. Continuing with our example, within the new record, you would select the student and select the class. Finally, save & close.

a computer screen showing a registration form

How to Create Multiple Records in the Join Table

Quickbase makes this easy by adding a URL Formula Button to each parent table.

From within a student record, you can click the Add Registration button to assign a person a subject, teacher, and grade.

You can do the same from within a class record too. The URL button adds a new record to the Registration table that joins a student and a class.

© 2025 Quandary Consulting Group. All Rights Reserved.