gpt4 book ai didi

Android - 从带条件的sqlite表中获取最大值

转载 作者:行者123 更新时间:2023-11-29 16:03:07 24 4
gpt4 key购买 nike

我有一个像...的 sqlite 表

    id     |    pname    |    ptype    |    amount    
------------------------------------------------------
1 | aaaaa | qw | 20
2 | bbbbb | qw | 25
3 | ccccc | qw | 55
4 | aaaaa | qw | 42

我想得到这样的输出

    id     |    pname    |    ptype    |    amount    
------------------------------------------------------
1 | aaaaa | qw | 42
2 | bbbbb | qw | 25
3 | ccccc | qw | 55

表示具有最大数量的非重复 pname...我应该运行哪个查询?

最佳答案

在 SQLite 3.7.11 或更高版本(Android API 级别 16 或更高版本)中,您可以简单地在 SELECT 列表中使用 MAX,其他值将保证来自具有最大值的记录:

SELECT id,
pname,
ptype,
MAX(amount) AS amount
FROM MyTable
GROUP BY pname

如果您需要使用早期版本,则需要明确检查:

SELECT *
FROM MyTable
WHERE NOT EXISTS (SELECT 1
FROM MyTable AS smaller
WHERE smaller.pname = MyTable.pname
AND smaller.amount < MyTable.amount)

关于Android - 从带条件的sqlite表中获取最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22035571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com