Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 什么是';其他表,依赖于列,动态表状态';?_Php_Mysql_Database Design - Fatal编程技术网

Php 什么是';其他表,依赖于列,动态表状态';?

Php 什么是';其他表,依赖于列,动态表状态';?,php,mysql,database-design,Php,Mysql,Database Design,我试图在一些设计图纸上勾画出一个数据库模板,但我在依赖性方面遇到了问题 用户将内容提交到网站以供查看,并根据内容的类型确定内容的优先级。不过,我也希望优先级由用户设置。基本上,如果人A是人B的朋友,那么人A提交的内容对人B来说是高优先级的。人C不是人A的朋友,所以在这种媒体中,内容对人C来说是低优先级的 我甚至不知道从哪里开始。任何朝着正确方向的努力都将不胜感激。我觉得这是一个问题,;然而,我正在使用PHP作为服务器端脚本语言,我想知道数学上是否能够做到这一点,因此没有通过MySQL的解决方案

我试图在一些设计图纸上勾画出一个数据库模板,但我在依赖性方面遇到了问题

用户将内容提交到网站以供查看,并根据内容的类型确定内容的优先级。不过,我也希望优先级由用户设置。基本上,如果人A是人B的朋友,那么人A提交的内容对人B来说是高优先级的。人C不是人A的朋友,所以在这种媒体中,内容对人C来说是低优先级的

我甚至不知道从哪里开始。任何朝着正确方向的努力都将不胜感激。我觉得这是一个问题,;然而,我正在使用PHP作为服务器端脚本语言,我想知道数学上是否能够做到这一点,因此没有通过MySQL的解决方案


目前,我正在考虑只使用一个区域来存储好友内容,而不考虑优先级。

只要跟踪所需内容,这应该不会有问题,关键在于编写Sql。例如,如果您具有以下表结构

person
------
id
name
otherstuff

person_releationship
-------------------
person_a_id
person_b_id
relationship_type_id

relationship_type
-------------------------
id
content_priority

content
--------------
id
stuff
person_id
user_priority
您可以编写下面的语句来检索与一个人相关的所有内容,不包括他们自己的内容,并按内容优先级排序

SELECT
    stuff
FROM 
    content c
    INNER JOIN person p
    ON c.person_id = p.id
    INNER JOIN person_releationship pr
    ON p.person_id = pr.person_a_id 
       or p.person_id = pr.person_b_id 
    INNER JOIN relationship_type rt
    ON pr.relationship_type_id = rt.id
WHERE
    p.id = "A"
    and c.person_id <> "A"
ORDER BY
    rt.content_priority, 
    c.user_priority

您应该注意,这种SQL和表设计独立于RDBMS和web技术

因此,如果内容的默认优先级被用户关系覆盖,我只需要选择哪一个更重要,还是应该通过一个公式来混合列:content-----------------id stuff person\u id content\u priority这取决于您。您是否希望非好友的最高优先级始终低于好友的最低优先级?我不确定RDSM是什么。关于加权优先级,这很有趣。谢谢。哎呀,我的意思是,我想做的是,在一种针锋相对的系统中,让网站的高优先级内容与高度个性化的内容混合在一起。两个好友内容视图,后跟两个站点优先级视图。即使好友内容是网站的高优先级内容,也是一种享受。因此,如果它既是好友内容又是优先级内容,那么它就不能算作优先级视图。这样,我希望在保持一个健康社会的同时,鼓励社区的发展。
ORDER BY
rt.content_priority *  c.user_priority