用PHP查询数据库,但数据重复显示,如何能让数据不重复如下图:
自编号0193 06:25:35状态显示完成,但11:25:35也显示完成,如何能让同一版本号数据只显示最新的,
网页代码如下:
nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
数据查询
if($_REQUEST['submit']!="")
{
$link=mysql_connect("127.0.0.1","root","12345678");
if(!$link) echo "没有连接成功!";
else echo "连接成功!";
mysql_select_db("busap", $link); //选择数据库
//控制查询条件
$q = "SELECT * FROM research where banben like '%{$_REQUEST['banben']}%' AND linename like '%{$_REQUEST['xianlu']}%' AND zhuangtai like '%{$_REQUEST['zhuangtai']}%' order by busname asc";
// mysql_query("SET NAMES GB2312"); //防止乱码
$rs = mysql_query($q); //获取数据集
$assoc= mysql_num_rows($rs);///影响的行数 , 原来用了mysql_fetch_assoc
echo "$assoc";
$row=mysql_fetch_array($rs); //只需要补充回这一行.
if(!$rs){die("Valid result!");}
}
?>
线路 |
中心编号 |
线路 |
车辆自编号 |
传输方式 |
媒体版本 |
日期 |
时间 |
状态 |
if($_REQUEST['submit']!="")
{
do { ?>
if($row[4]=="0")
{
$leixing="自动";
}
else
{
$leixing="手动";
}
if($row[8]=="fin")
{
$zhuangtai="完成";
}
else
{
$zhuangtai="未完成";
}
?>
|
|
|
|
|
|
|
|
|
回复讨论(解决方案)
加个标识列,显示过的数据,更新为1.未显示的为0,查询时,只查询标识为0的数据。
写个判断就好了,版本号相同时,取最大时间的记录
能给个详细判断代码吗,本人小白,初学者
试试
$q = "SELECT *,max(媒体版本) FROM research where banben like '%{$_REQUEST['banben']}%' AND linename like '%{$_REQUEST['xianlu']}%' AND zhuangtai like '%{$_REQUEST['zhuangtai']}%' group by 媒体版本 order by max(媒体版本) busname asc";
登录后复制
就是取媒体版本的最大值,然后显示
这不是很简单吗?
可以使用max函数.