从这个问题:Stackoverflows Tags system, How To
SO考虑问题和答案 是一回事 - 一个帖子。
问题有标题,而答案没有,SO如何处理?表格结构是什么?
您如何区分问题和答案以及标题字段中的答案?你能告诉我这在MySQL中会是什么样子吗?
答案 0 :(得分:4)
一般来说,这是面向对象的继承问题及其映射到MySQL等数据库(或SO的情况下的MS SQL)所使用的关系模型。
如果您使用这些关键字进行搜索,可以找到更多相关资源。我将简要介绍一下该问题的不同方法:
title
列的值具有null
值作为答案。性能良好,不需要太多的连接,太多未使用的数据。null
值,但有些冗余代码。post
的共享属性创建一个单独的表,并为每个子类型questions
,answers
等创建一个表。没有null
值,没有冗余代码,但必须使用SQL连接几乎任何东西,理论上最简洁,因为它被规范化(学术界似乎喜欢这样),但对于大量的数据根本没用。我不知道为SO选择了哪种特定策略。也许mod的某个人会关心回答这个问题。