Structure of database for representing connections between users
===

In the app that I am trying to build, there will be users (stored in a users table), and users can 'connect' to one another (e.g. like being friends on Facebook). What I am trying to do is build the data structure for storing these connections. The data will mainly be used for presenting a 'connections' (e.g. friends on Facebook) table for a user. So far I have came across 2 different approaches for doing that:

1. Creating A table for each user which has all his connections (e.g. friends).
2. Having one table representing ALL the connection in the website (for example: 

[Row 1 = John-Kyle]

[Row 2 = Kyle-Bob] 

[Row 3 = Lilli-John] 

etc....).

My question is - which one would be more efficient (mainly in term of query time, but also in terms of size). I guess the second one would be much smaller in size, but would take a lot more time to query... What do you think? Which one is better to use? If you have any idea which model is more widely use (especially by popular websites like Facebook, Instagram etc.) that would also help a lot!


Thank you for your support! 