# Relational Database Question?

**URL:** <https://forum.kirupa.com/t/relational-database-question/264744>\
**Category:** programming\
**Created:** [June 30, 2008, 12:58am UTC](https://forum.kirupa.com/t/relational-database-question/264744 "2008-06-30T00:58:36Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![unikrl8](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/unikrl8/32/548_2.png) [@unikrl8](https://forum.kirupa.com/u/unikrl8)\
**Post date:** [June 30, 2008, 12:58am UTC](https://forum.kirupa.com/t/relational-database-question/264744/1 "2008-06-30T00:58:36Z")

</div>

I have three tables. Users - Documents - Connections

Users is just users.  
Documents have id’s and names, among other things.  
Connections is a giant list of userID’s and their corresponding documentID (each user has multiple rows connecting them with different documents)

I want to query a big list of document NAMES associated with a given userID.

Is there any way to do this without creating 100 queries?

Right now I have:

```auto
select docID from connections where userID = x

```

then I have PHP generate a bunch of queries in a for-loop using the docIDs from the first result in the form of:

```auto
select docName from documents where docID= varFromFirstResult

```

There must be a way to consolidate this into a single query. Can anyone help!?

---

<div class="post-metadata">

**Author:** ![actionAction](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/actionaction/32/3987_2.png) [@actionAction](https://forum.kirupa.com/u/actionAction)\
**Post date:** [June 30, 2008, 1:38am UTC](https://forum.kirupa.com/t/relational-database-question/264744/2 "2008-06-30T01:38:32Z")

</div>

I am pretty sure something like this would work:

```auto

select `connections`.`docID`, `documents`.`names` from connections, documents where `connections`.`userID` = x

```

---

<div class="post-metadata">

**Author:** ![sekasi](https://avatars.discourse-cdn.com/v4/letter/s/5f8ce5/32.png) [@sekasi](https://forum.kirupa.com/u/sekasi)\
**Post date:** [June 30, 2008, 1:51am UTC](https://forum.kirupa.com/t/relational-database-question/264744/3 "2008-06-30T01:51:30Z")

</div>

```auto

SELECT connections.docID, documents.docName
FROM connections
INNER JOIN documents
ON connections.docID=documents.docID
WHERE connections.userID = x

```

---

<div class="post-metadata">

**Author:** ![unikrl8](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/unikrl8/32/548_2.png) [@unikrl8](https://forum.kirupa.com/u/unikrl8)\
**Post date:** [June 30, 2008, 3:20am UTC](https://forum.kirupa.com/t/relational-database-question/264744/4 "2008-06-30T03:20:09Z")

</div>

Awesome thanks!

I never really understood Joins before but some w3c reading and I’m up and running!

For anyone else that stumbles here… Read this:  
[http://www.w3schools.com/Sql/sql\_join.asp](http://www.w3schools.com/Sql/sql_join.asp)

---

<div class="post-metadata">

**Author:** ![sekasi](https://avatars.discourse-cdn.com/v4/letter/s/5f8ce5/32.png) [@sekasi](https://forum.kirupa.com/u/sekasi)\
**Post date:** [June 30, 2008, 2:16pm UTC](https://forum.kirupa.com/t/relational-database-question/264744/5 "2008-06-30T14:16:54Z")

</div>

You’re very welcome.

And yes, read up on joins, they are pretty much what makes complex SQL tick.
