$sql
=
"SELECT
max(id)
as
MAX
FROM
a"
$data
=
mysql_query($sql,
$conn)
list($var_max_num)
=
mysql_fetch_row($data)
mysql_free_result($data)//注意及时FREE
另外,及时你不想用自动增加,也应该给这个字段设置为主键或者唯一索引,不要让它重复。
如果你的程序没有问题,那么可能是存在并行,一个进程查出最大为6之后,不断的从7、8、9开始插入数据,另外一个进程可能查出最大为7之后,从8、9、10之后开始插入数据。
还有,对于实际使用了程序系统,每次都去max并不可取,应该另外设置一个静态参数表,只有一条记录、一个字段,用来存放下一次插入的数据,每次需要插入数据的时候就来查这个表,速度应该比MAX快。
select '1' cs,group,name from a,b where b.yuanshiid=a.idunion all
select '2',group,name from a,b where b.afterid=a.id
sql
SELECT id,name, value FROM tablea WHERE 第一个sql条件 OR 第二个sql条件php
$a = Asql结果数组$b = Bsql结果数组
foreach($a as $k=>$v){
foreach($b as $ke=>$va){
if($v['id'] == $va['id']){
$a[$k]['value'] = $va['value']
break
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)