gpt4 book ai didi

php - 如何获取表中具有最大值的行

转载 作者:行者123 更新时间:2023-11-29 11:50:31 25 4
gpt4 key购买 nike

我有一个表格如下:

id         date     custid  billno  month   amount  balance
64 07-Jun-2015 1 102 5 9192 0
134 05-Jul-2015 1 172 6 9744 0
235 01-Aug-2015 1 277 7 4032 0
435 04-Sep-2015 1 461 8 3024 0
747 22-Sep-2015 1 597 9 2875 0
958 06-Nov-2015 1 789 10 3100 0

我想要获取月份最大的行,即我想要获取月份为 10 的行

如果我使用以下查询,则会给出第 9 个月的行

$get_lst = mysql_query("select * from `ledger` where `custid`='$custid' order by `month` DESC") or die(mysql_error());
$get_lst = mysql_fetch_assoc($get_lst);
print_r($get_lst);

请帮助我查询中缺少什么?

最佳答案

看来您存储的值类型错误。日期列应为 DATE 类型,月份列应为 INT 类型,甚至更好的 TINYINT 类型。

将月份存储为 VARCHAR 会导致数据库将其作为字符串进行排序。排序字符串将开始逐个字符检查(将“9”与“10”进行比较将得到“9”>“1”)。

将列更改为 INT 或 TINYINT 后,您的查询将起作用。

要提高较大表的性能,您还可以在查询中使用“LIMIT 1”,这样,如果您只需要一行,就不会获取整个表。

关于php - 如何获取表中具有最大值的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34153662/

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