# Database design input needed

**URL:** <https://forum.kirupa.com/t/database-design-input-needed/263606>\
**Category:** programming\
**Created:** [June 17, 2008, 5:48pm UTC](https://forum.kirupa.com/t/database-design-input-needed/263606 "2008-06-17T17:48:21Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![JoshuaJonah](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/joshuajonah/32/1775_2.png) [@JoshuaJonah](https://forum.kirupa.com/u/JoshuaJonah)\
**Post date:** [June 17, 2008, 5:48pm UTC](https://forum.kirupa.com/t/database-design-input-needed/263606/1 "2008-06-17T17:48:21Z")

</div>

ok, I’m working on a relational database design for retailers-advertisers-products

Here is the current layout:  
 ![](http://www.joshuajonah.com/database.png)

How would i design this to make it easier for other things i might want to do, like “all retailers who stock a product category”? or “all retailers a specific advertiser works with”?

Any SQL geeks?

---

<div class="post-metadata">

**Author:** ![JoshuaJonah](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/joshuajonah/32/1775_2.png) [@JoshuaJonah](https://forum.kirupa.com/u/JoshuaJonah)\
**Post date:** [June 17, 2008, 6:51pm UTC](https://forum.kirupa.com/t/database-design-input-needed/263606/2 "2008-06-17T18:51:21Z")

</div>

bump

---

<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 17, 2008, 6:55pm UTC](https://forum.kirupa.com/t/database-design-input-needed/263606/3 "2008-06-17T18:55:10Z")

</div>

I have to admit, I saw this thread before your bump but didn’t reply because I couldn’t find much wrong with it.

It features a lot of joins but tbh that doesn’t really make a difference since joins are faster than the alternative.

It all looks structured and logic to me. If you are really concerned with the performance of your database, then maybe you should look into partitioning. I guess it’s a shameless self-promotion, but wrote a post of biblical length about sql performance here; [http://www.erikhallander.com/blog/2008/web-server-performance-guide-part-23-mysql.html](http://www.erikhallander.com/blog/2008/web-server-performance-guide-part-23-mysql.html)

Good luck!

---

<div class="post-metadata">

**Author:** ![JoshuaJonah](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/joshuajonah/32/1775_2.png) [@JoshuaJonah](https://forum.kirupa.com/u/JoshuaJonah)\
**Post date:** [June 17, 2008, 7:06pm UTC](https://forum.kirupa.com/t/database-design-input-needed/263606/4 "2008-06-17T19:06:28Z")

</div>

lol, thanx for the input sekasi. I thought it was ok, i just threw it together, but I’m always one step behind common database design trends it seems.

---

<div class="post-metadata">

**Author:** ![JoshuaJonah](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/joshuajonah/32/1775_2.png) [@JoshuaJonah](https://forum.kirupa.com/u/JoshuaJonah)\
**Post date:** [June 17, 2008, 7:07pm UTC](https://forum.kirupa.com/t/database-design-input-needed/263606/5 "2008-06-17T19:07:49Z")

</div>

I guess i’ll just make some stored procedures for my more common selects.
