• 0

MySQL table structure ?


Question

I just wanted to get some opinions on how i should lay out a table ... I Have made a chat system which requires loging in ... that all works but now I want to add friend feature... although I have built a table for "friends" before I am not 100% sure that mine is efficient ... the best I have come up with so far is setting one column as the person who sent the friend request and the other as the acceptie .... any improvements on logic ? I was thinking possibly an array of user IDs within each users "friend" column ... but not sure if that would just be to much I think it would be ... opinions ?

Link to comment
https://www.neowin.net/forum/topic/1125468-mysql-table-structure/
Share on other sites

5 answers to this question

Recommended Posts

  • 0

I am not sure if this is the best solution but your table friends could have fields like this:

me_id

friend_id

accepted (bool)

So if you send an invitation to a friend, you know how to set IDs. If some one send you a request, then he will put his id as me_id....And when you are doing a SELECT to get you friends you can do sth like this:

SELECT * FROM friends WHERE me_id = x

SELECT * FROM friends WHERE friend_id = x

where x is your id

Then put return valuse to one table.

  • 0

I can't really work anything out without seeing your full table structure and what it is you're trying to do but remember, you want to normalise your database as much as possible to make it more efficient, so add linking tables and whatnot.

  • 0

I'd probably do the same as arlen... Do you want to provide any message with the invite? If you think the table will grow huge, I'd index both ID's... Tho' it probably isn't really THAT necessary since both fields will be integers and any number of internal DB sorting algorithms will probably handled queries easily.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Also, Guru3D.com always has some pros and experts lurking in the comments.
    • If anyone is wondering, it's 30fps at 4K
    • This 4K webcam from Acer is now only $59.99 by Taras Buria Those looking for an affordable, high-resolution webcam from a reputable manufacturer can check out the latest deal from Acer, which puts its 4K webcam at a solid price. Thanks to a 14% discount, you can buy this all-metal 4K webcam from Acer for just $59.99. Despite the affordable price tag, the webcam has a pretty large 1/2" CMOS sensor manufactured by Sony. Apart from its size, it supports additional conveniences, such as high dynamic range and phase-detection autofocus (PDAF). Plus, the camera ensures you do not have to buy additional audio equipment, as it comes with two built-in high-sensitivity microphones, a built-in background noise filter, and the ability to pick up your voice from up to 2.5 meters away. Acer is not cheaping out on materials, and the webcam is enclosed in a more premium metal case, which is also good at heat dissipation (high-resolution cameras can get quite hot). And to make sure no one is peeping at you when the camera is in use, there is a magnetic cover also made of metal. Additional conveniences include an LED status indicator and a built-in mount that lets you place a camera on a tripod. Acer 4K Webcam for PC/Mac with All-Metal Unibody Sculpted - $59.99 | 14% off Good to know This Amazon deal is U.S.-specific and not available in other regions unless specified. We only use first-party seller links (at the time of article publishing); ensure that you purchase from a first-party seller link only. Check out Today's Deals on Amazon | or our recent tech deals. Become a Prime member (for Students or SNAP) via Neowin Get Prime Access - Prime for half price (for qualifying Medicaid, EBT, SNAP) Subscribe to Prime Video, Audible Plus, Music Unlimited, or Kindle Unlimited via Neowin As an Amazon Associate, we earn from qualifying purchases.
  • Recent Achievements

    • Conversation Starter
      NovaEdgeX earned a badge
      Conversation Starter
    • One Year In
      Console General earned a badge
      One Year In
    • One Year In
      Twozo Technologies earned a badge
      One Year In
    • One Month Later
      Twozo Technologies earned a badge
      One Month Later
    • Week One Done
      Twozo Technologies earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      519
    2. 2
      +Edouard
      185
    3. 3
      PsYcHoKiLLa
      107
    4. 4
      Steven P.
      87
    5. 5
      ATLien_0
      67
  • Tell a friend

    Love Neowin? Tell a friend!