MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
Renco
V2EX  ›  MySQL

如何根据 交易流水表和卡信息 对卡的消费时间进行排序

  •  
  •   Renco · Aug 22, 2019 · 4444 views
    This topic created in 2460 days ago, the information mentioned may be changed or developed.

    有这么一个需求,就是会员中的会员卡信息,要按照会员卡的消费时间排序,最后消费的排序在最前面

    服务器 mysql 版本做了配置 不能用 distinct 或者 group by 这种方式

    不使用这种会导致 关联交易流水表的时候会查到多个重复数据,这种情况下要怎么样实现需求

    lllllliu
        1
    lllllliu  
       Aug 22, 2019
    [
    {
    }
    ]
    lllllliu
        2
    lllllliu  
       Aug 22, 2019
    obj = [
    {
    会员卡信息...
    会员消费信息:[
    {消费时间...}
    ...
    ]
    }
    ...
    ]
    然后根据 item->消费记录->Max(消费时间) 对 item 进行排序。。。应该就好了吧。
    lllllliu
        3
    lllllliu  
       Aug 22, 2019
    或者。。直接拿所有的消费记录来排序。。然后在关联查询会员卡。
    taotaodaddy
        4
    taotaodaddy  
       Aug 22, 2019 via Android
    min max
    taotaodaddy
        5
    taotaodaddy  
       Aug 22, 2019 via Android
    不能 group by,哟可能败了
    taotaodaddy
        6
    taotaodaddy  
       Aug 22, 2019 via Android
    哟改为我
    stillyu
        7
    stillyu  
       Aug 22, 2019 via iPhone
    会员卡信息加个最后消费时间的字段?
    Renco
        8
    Renco  
    OP
       Aug 22, 2019
    @stillyu 如果是我 我就这么设计了,然而开发人员不能改设计啊可恶
    saulshao
        9
    saulshao  
       Aug 22, 2019
    如果不能 distinct 或者 group by,那也不建议 join。
    能用的办法就很有限了。
    1. 查出所有的会员,想点办法过滤掉一些肯定没消费的。或者每次只处理一定范围的会员记录。
    2. 根据会员去消费记录表查询需要的记录,在内存里排序并构造需要排序的结果
    3. 排序
    上述的步骤假设会员表肯定比消费记录表小,如果反之就倒过来写程序就行。长期来看应该是会员表更小才对.....
    conn4575
        10
    conn4575  
       Aug 23, 2019 via Android
    我更好奇为啥不让用 group by
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1069 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 17:54 · PVG 01:54 · LAX 10:54 · JFK 13:54
    ♥ Do have faith in what you're doing.