我的数据库可以有三角关系吗?

6 database database-design

拿桌子:用户,评论,片段.

用户可以拥有许多代码段.一个片段可以有很多评论.用户可以留下很多评论.

反过来,当我绘制图形时,我最终会得到类似三角形的东西.

User 1-------------* Comment
      \           / 
       \         /
        *Snippet 1
Run Code Online (Sandbox Code Playgroud)

Mik*_*cic 7

当然,数据库可以具有以下关系:

Users
  id
  name
  address

Snippets
  id
  user_id
  body

Comments
  id
  body
  snippet_id
  user_id
Run Code Online (Sandbox Code Playgroud)

例子:

--Get all comments by a user
SELECT * FROM comments WHERE user_id = 1

--Get all snippets by a user
SELECT * FROM snippets WHERE user_id = 1

--Get all comments on a snippet
SELECT * FROM comments WHERE snippet_id = 1

--Get all comments on a particular snippet by a particular user
SELECT * FROM comments WHERE snippet_id = 1 AND user_id = 1
Run Code Online (Sandbox Code Playgroud)