为了账号安全,请及时绑定邮箱和手机立即绑定

无法获取第一笔和最后一笔交易?

无法获取第一笔和最后一笔交易?

PHP
侃侃尔雅 2022-05-27 16:52:49
我有一个需要显示第一个交易日期和最后一个交易日期的交易表。该列是西班牙文的FECHA。我只是无法显示日期。如果您知道更好的解决方案,我很乐意在这里。<?php    $result2 = mysql_query("SELECT `FECHA` FROM `transaction` where id = '".$id."' GROUP BY `id` ORDER BY `FECHA` ASC LIMIT `1`");    $trans = mysql_fetch_row($result2);    $date = date_create($trans[0]);    echo date_format($date, 'd/m/y');    #output: 24/03/12    $result1 = mysql_query("SELECT `FECHA`  FROM `transaction`  where id = '".$id."' GROUP BY `id` ORDER BY `FECHA` DESC LIMIT `1`");    $trans = mysql_fetch_row($result1);    $date = date_create($trans[0]);    echo date_format($date, 'd/m/y');    #output: 24/03/12?>
查看完整描述

2 回答

?
达令说

TA贡献1821条经验 获得超6个赞

您可以使用 min 和 max 聚合函数;


将您的查询更改为


SELECT min(FECHA) earliest_date, max(FECHA) latest_date

FROM `transaction`  

WHERE id = '".$id."'

GROUP BY id

然后,当您选择第一个日期时earliest_date,最后一个日期将是latest_date.


但是,请阅读有关 SQL 注入的信息,并且不要传递来自外部来源的变量,例如 $id。


查看完整回答
反对 回复 2022-05-27
?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

工作谢谢


<?php

    $result2 = mysql_query("SELECT MIN(FECHA)  FROM `transaction`  where id = '".$id."' ");

    $trans = mysql_fetch_row($result2);

    $datemin = date_create($trans[0]);


    echo date_format($datemin, 'd/m/y');

    #output: 24/03/12


    $result1 = mysql_query("SELECT MAX(FECHA)  FROM `transaction`  where id = '".$id."' ");

    $trans = mysql_fetch_row($result1);

    $datemax = date_create($trans[0]);


    echo date_format($datemax, 'd/m/y');

    #output: 24/03/12

?>


查看完整回答
反对 回复 2022-05-27
  • 2 回答
  • 0 关注
  • 109 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信