1

需要一些有关 mysql 语法的帮助。我有数千笔交易的清单。

会员 ID 对个人来说是唯一的。前 7 位数字是家庭独有的(后两位数字是针对家庭中的特定个人的)。

我需要按家庭分组并将他们的交易添加到家庭的主要成员(01),只要它们是在同一日期完成的。

ID                Date    Amt

 1. 888888801         0715    $100
 2. 888888802         0715    $50 
 3. 888888802         0720    $300
 4. 777777701         0715    $250
 5. 666666601         0630    $75
 6. 666666604         0630    $100 
 7. 555555502         0701    $99

2配1,6配5。

 - ID                Date    Amt

 1. 888888801         0715    $150
 3. 888888802         0720    $300
 4. 777777701         0715    $250
 5. 666666601         0630    $175
 7. 555555502         0701    $99
4

2 回答 2

0

假设您无法重新设计这些表格,并且如果我没听错的话,这可能就是您想要的:

SELECT LEFT(`id`,7) as Family, `date`, SUM(`amt`) as `amt`
FROM mytable 
GROUP BY LEFT(`id`,7), `Date` 
ORDER BY `id`
于 2012-06-10T16:55:07.017 回答
0

那这个呢

SELECT id, date, sum(amount) FROM myTable
GROUP BY date, LEFT(`id`,7)

演示

于 2012-06-10T18:24:02.047 回答