this post was submitted on 01 Jul 2024
331 points (92.1% liked)

LinkedinLunatics

3594 readers
12 users here now

A place to post ridiculous posts from linkedIn.com

(Full transparency.. a mod for this sub happens to work there.. but that doesn't influence his moderation or laughter at a lot of posts.)

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 3 points 5 months ago (1 children)

Yeah it'd be a person table, and the relationship table indicating the ids of shipped couples. Do you think there'd need to be a status in the relationship table so we can tombstone exes? Or maybe started and ended date columns for each relationship so we can figure out whose cheating on who. But when about on-off relationships then? How would we model Ross and Rachel?

[โ€“] [email protected] 2 points 5 months ago* (last edited 5 months ago)

I think wed just need the following

  • rel.id (primary key)
  • rel.user_id (foreign key to person.id)
  • rel.user_id2 (foreign key to person.id)
  • rel.type (type of relationship)
  • rel.start (non null)
  • rel.end

From there you don't need a rel.status because you're not updating this rel.id entry except for the rel.end. if they started dating again later it would be a whole new entry, and then you could query their entire dating history to see if they keep coming back to the same person, dating around, playing the field, etc. Separately there could be a friendship relationship that is tracked so you could if they ended being friends after a breakup.