Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何";分组方式;有多个“;“订购”;_Php - Fatal编程技术网

Php 如何";分组方式;有多个“;“订购”;

Php 如何";分组方式;有多个“;“订购”;,php,Php,我试图显示添加的图片的最后一个“日期”, 与特定的人有关 如果我在下面输入一个附加元素 ORDER BY:,timestampDESC结果没有变化。具有 每个小组我都知道第一张照片的日期 有些人有一个形象,有些人有二十五个或更多。 数据库中大约有1500人 正确返回所有其他数据/图像 我在网上找不到任何关于我的问题的参考资料, 更多的是一种概括 谢谢 输出为:- Person's - Person - Nos Of - Last Picture Picture Name Pic

我试图显示添加的图片的最后一个“日期”, 与特定的人有关

如果我在下面输入一个附加元素 ORDER BY:,
timestamp
DESC结果没有变化。具有 每个小组我都知道第一张照片的日期

有些人有一个形象,有些人有二十五个或更多。 数据库中大约有1500人

正确返回所有其他数据/图像

我在网上找不到任何关于我的问题的参考资料, 更多的是一种概括

谢谢

输出为:-

Person's - Person -  Nos Of - Last Picture 
Picture     Name    Pictures     "Date"
--------   ------   --------  ------------

image       Tony       5      26th June 2012

image       Beth       1      6th January 2011

image       John       2      5th May 2012
msql_查询是:-

<?php

   function person($person_id) {

      $persons = array();

      $persons_query = mysql_query("
         SELECT `persons`.`person_id`, `persons`.`person_name`, 
         LEFT(`persons`.`person_description`, 50) as `person_description`, 
         `person_images`.`timestamp`, `person_images`.`image_person_id`, 
         `person_images`.`person_name`, `person_images`.`ext`, 
          COUNT(`person_images`.`image_person_id`) as `image_count`
          FROM `persons`
          LEFT JOIN `person_images`
          ON `persons`.`person_id` = `person_images`.`person_id`
         LEFT JOIN `person_images`
         ON `persons`.`person_id` = `person_images`.`person_id`
         WHERE `persons`.`member_id` = ".$_SESSION['member_id]
         GROUP BY `persons`.`person_id`
         ORDER BY `persons`.`person_name`, 
     ");

     While ($persons_row = mysql_fetch_assoc($persons_query)) {

        $persons[] = array(
            'person_id'              => $persons_row['person_id'],
           'person_name'            => $persons_row['person_name'],
           'person_description'     => $persons_row['person_description'],
           'timestamp'               => $persons_row['timestamp'],
           'image_person_id'         => $persons_row['image_person_id'],
           'ext'                     => $persons_row['ext'],
           'count'                   => $persons_row['image_count']
        );
     }
     return $persons;
   }
?>

我认为您的问题与订购无关,因为您只对最新图片的日期感兴趣。那么你试试这个怎么样:

MAX(timestamp) GROUP BY person_id

前面的一些问题,我将考虑回答您可以参考以下内容:如果您确实需要图像id,请查看一个报告运行日期的示例,该示例将上述内容与另一个查询相结合,以匹配时间戳和人员id,从而获得图像id。无需排序。因此,它将看到使用MAX不起作用。谢谢