- 论坛徽章:
- 0
|
desc table_test ;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| subject | varchar(255) | NO | | | |
| DateTime | datetime | YES | | NULL | |
| Id | bigint(20) | NO | PRI | 0 | |
+----------+--------------+------+-----+---------+-------+
这张表是为TOP5服务的,也就是说表里永远最多只有5条记录,那么下面就有两种情况:
1: 当改表记录小于五条时,执行insert into 操作;
2:找出该表内最老的一条记录,更新它的subject和DateTime,
$id = select Id from table_test order by DateTime limit 1; //找出时间最老的一条记录的ID,
update table_test set subject = "XXX",DateTime=“YYY” where Id = $id; //更新此ID的字段
(这两句如何合并成一句??)
问题:怎么用一句sql还完成,因为我要在C里调,尽量我不解析查询结果。我知道inert into 里有一个 ON DUPLICATE KEY UPDATE,可是我不知道在这里怎么实现
[ 本帖最后由 flyfeel 于 2009-5-22 10:05 编辑 ] |
|