php中如何链接表,php – 在mysql中链接表

我需要知道如何在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评论进行了更正.

标签:php,mysql,database

来源: https://codeday.me/bug/20190626/1295816.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值