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