V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hellohacker
V2EX  ›  程序员

用计算结果给从数据库数据排序的问题

  •  
  •   hellohacker · 2014-06-14 00:02:22 +08:00 · 2677 次点击
    这是一个创建于 3807 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我用的是mysql,现在有这么一个需求,计算一个用户的中奖率

    比如 一个zhongjiang表 有两个字段,分别是
    user_id (用户id) zhongjiang(是否中奖 1 中奖 2未中奖)

    下面是3个用户数据

    1 1
    1 2

    2 1
    2 1
    2 1
    2 2

    3 2
    3 2
    3 1

    上面的数据的意思就是 用户id为1的 中奖了1次 买了2次; 用户2中奖了3次 买了4次; 用户3中奖了1次 买了 3次
    中奖率 = 中奖次数/买的次数

    我想对这些数据根据计算结果,排序出来,sql怎么写呢?
    2 条回复    2014-06-14 05:43:27 +08:00
    lvni
        1
    lvni  
       2014-06-14 00:47:56 +08:00
    SELECT * , ( 2 - SUM( zhongjiang ) / COUNT( user_id ) ) AS psort
    FROM `zhongjiang`
    WHERE 1
    GROUP BY user_id
    ORDER BY psort DESC
    crazybubble
        2
    crazybubble  
       2014-06-14 05:43:27 +08:00
    你不是问过这问题了么。。。 http://www.v2ex.com/t/109418#reply6
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2506 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 16:08 · PVG 00:08 · LAX 08:08 · JFK 11:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.