有人可以快速提示我如何实现以下目标:
我有一个包含3行的表:id
,value1
和user
。
假设数据库中有1个条目,其中包含以下数据:
1
,test
,user1
现在,当我提交表单时,在实际插入下一个内容之前,我想检查数据库中最后一个条目的user
的值,并将下一个条目更改为user1
(如果最后一个是user2)或user2
(如果最后一个是user1)
编辑:
我想我解释得有点愚蠢。
基本上我想要行user
的某种斑马条纹,如果这更有意义: - )
答案 0 :(得分:1)
您可以继续执行类似的查询
SELECT user FROM table WHERE ID IN(SELECT MAX(ID) FROM table)
然后使用该用户值来确定下一个用户值是什么。
答案 1 :(得分:1)
它可以更容易:
SELECT user FROM table ORDER BY id DESC LIMIT 1
假设id是AI字段。
编辑:添加一些PHP代码:
$getLastUser = mysql_query("SELECT user FROM table ORDER BY id DESC LIMIT 1");
$LastUser = mysql_fetch_array($getLastUser);
$newUser = ($LastUser['user'] == "user1") ? "user2" : "user1";
//insert $newUser to the 'user' field.
答案 2 :(得分:0)
为了避免并发问题,请将其全部作为一个语句执行:
INSERT INTO your_table (value1, user)
VALUES ('your_value', (CASE (SELECT user FROM your_table ORDER BY id DESC LIMIT 1) WHEN 'user1' THEN 'user2' WHEN 'user2' THEN 'user1' END))
答案 3 :(得分:0)
看起来您需要在输出处使用Zebra条纹,而不是插入时间。