加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在mysql中链接表

发布时间:2020-12-13 17:07:27 所属栏目:PHP教程 来源:网络整理
导读:我需要知道如何在php / mysql设置中链接两个表然后对结果进行排名? 这是我的情况. 我有一个故事表: storyidwriteridtitlestorysubmitdate 和一张投票表 voteiduseridstoryidvote 我将投票存储为1,将投票存储为-1 我正在寻找一种方法来加入这两个表,然后根
我需要知道如何在php / mysql设置中链接两个表然后对结果进行排名?
这是我的情况.

我有一个故事表:

storyid
writerid
title
story
submitdate

和一张投票表

voteid
userid
storyid
vote

我将投票存储为1,将投票存储为-1
我正在寻找一种方法来加入这两个表,然后根据他们收到的票数对故事进行排名/排序.
我对任何关于如何操作或不同的可能数据库模式的想法持开放态度.

解决方法

我更喜欢保持桌子名称的单数.这不是一个“故事”表;它是一个包含多行的“Story”表.

投票只能归结为一个故事,所以这是两者之间的一对多关系.我将外键放在投票表中,让它指出与之相关的故事.如果您同意,请更改您的架构:从故事表中删除voteid,并将投票中的storyid作为故事表的外键.

但话虽如此,也许您可??以尝试这样的查询:

select stories.storyid,sum(vote=-1) as down,sum(vote=1) as up
from stories
inner join votes on (stories.storyid = votes.storyid)
group by stories.storyid

根据下面的ypercube评论进行了更正.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读