您好,用递归的方法。
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比内黄网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式内黄网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖内黄地区。费用合理售后完善,十载实体公司更值得信赖。
?php
global $str;
$str = getson(0); //getson里面的参数是,上级目录的id
echo $str;
function getson($fatherid)
{
$str = $str . "ul";
$sql="Select * From 表 Where 上级栏目ID=$fatherid";
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
$str = $str . "li" . $row[栏目名称] . "/li" . getson($row[该栏目的ID]);
}
return $str."/ul";
}
?
thinkPHP 查询数据库中id最大的一条数据操作如下:
先给数据库中的这个字段(sort)分组 再降序排列, 取第1条。
通过步骤1 获取了 sort值为最大的数据, 然后在 通过 where sort ='步骤1取的值'。
查询最大ID,select max(id) from table。
查询最大ID的记录 select * from table where id = (select max(id) from table)
或者select * from table t where not exists (select 1 from table t1 where t1.id t.id)
sql='select * from table';
while(res=mysql_fetch_assoc(sql)){
echo "res['name']br"
}
恩,就是以上代码就可以啦,那个TABLE改成你要的那张表就可以了!希望可以帮到你!
你可以看一下mysql的GROUP_CONCAT, 下面附上我写的简单demo:
数据库创建:
查找:
sql:
SELECT o.*, CONCAT("[",
GROUP_CONCAT('{"id":"', g.id, '","name":"',g.goods_name,'"}'),
"]") as goodsinfo
FROM `order` o
JOIN `goods` g
ON o.id=g.oid
GROUP BY g.oid
你这样写是有问题的
aa.php?id=22id=23id=24
id 是不允许被重复的
如果你想传多个id的话,可以使用aa.php?id=22,23,24
在aa.php里写
$sql = sprintf("SELECT * FROM `archives` WHERE `ID` IN ('%s')",
$_GET['id']
);
这样执行后能取得所要的数据
当然可以,id一半是主键,唯一,结果精准,而用name,就可能有多个同name的,再则从查询效率和性能而言,主键有索引,id查询效率更高;
数据库中插叙可根据自己的需求用任一字段为条件查询正条数据库记录,原则在于怎样更高效,更精准,更符合你的要求;