在SQL中显示最新数据

时间:2015-05-04 13:07:05

标签: php mysql sql

任何人都可以帮助我吗?我是PHP的新手,所以请理解。 这是我的代码。

$query="SELECT MAX(mid) as mid, ticketno FROM tbl_message GROUP BY ticketno";
$result=mysql_query($query);
while($row = mysql_fetch_array($result)){ 
echo $row['mid'];
echo $row['ticketno'];
}

显示此

 - mid    ticketno
 - 2-------21510
 - 1-------24693
 - 4-------24693

我想要什么

 - mid    ticketno
 - 2-------21510
 - 4-------24693

我的数据库:

enter image description here

3 个答案:

答案 0 :(得分:5)

使用ORDER BY。试试 -

$query="SELECT mid, ticketno FROM tbl_message GROUP BY ticketno ORDER BY mid DESC";

答案 1 :(得分:1)

SELECT t.*
FROM tbl_message t
WHERE NOT EXISTS ( SELECT 'a'
                   FROM tbl_message t2
                   WHERE t2.ticketno = t.ticketno
                   AND t2.mid > t.mid
                  )

答案 2 :(得分:0)

好的,基本上我只是将varchar更改为int(TICKETNO的类型) 然后它返回最新的ticketno。

我使用了这个查询

$query="SELECT MAX(mid) as mid, ticketno FROM tbl_message GROUP BY ticketno";

我使用MAX()只返回最新的票号和GROUP BY ticketno,这样它就会返回另一张唯一的票号。

我猜varchar会读取空格。