Correct DB structure to Return results list that matched multiple tables

Hey all,

One part of our project is a dynamic directory that includes specialists, the industry, skills, location (city, state, country) and services.

I had in my mind how I’d make this work, but when I start trying to display results with queries that join multiple tables (e.g. get the specialist, plus their expertise, plus their service, industry and location) so I can display it all in one column - the specialists are just duplicating multiple times so I’m definitely doing something wrong.

This is the general setup of the page:

Query variables taken from the url on AC: service, industry, function etc. passed through to the SC.

I then have a SC with a query that looks at all join (reference tables) that have the various ids from the queries taken from the url- all have specialist ids in each table and this is what I link the tables with and use the conditions to only return results that match each url parameter. This isn’t working for me - I’m super basic with db’s.

An example of a join table (and I have one for each query type) is:

Service id - ref to a table that lists all services offered and the names etc
Specialist if - ref to the table of specialists
Id - join table row id

The specialist might list multiple services which is why I use join tables.

So I’m trying to display the list of specialists that match each url parameter query on the page via a paginated query.

The url could contain just one parameter (eg service Id which displays all specialists with an id listed in the service join table) or up to 6 (with their specialist id required to match all 6).

I’m struggling getting my head around this due to my lack of experience with databases so I’d appreciate any guidance here!

Community Page
Last updated: