我很难理解使用IF语句的MySQL文档我希望有人可以为我简化它。我甚至不知道我想要完成什么是最好使用MySQL IF语句完成,或者是否有更好的方法来使用PHP。我正在尝试创建一个在线时间卡系统,仅用于学习/实验。我有三个按钮“Clock in”“Update”和“Clock Out”。 “Clock in”非常简单,我所做的就是在表格中添加“员工ID”和“Time in”以及“Date”。 “更新”功能是我现在所处的位置。所以我要做的就是:
所以我想要的陈述将是:
IF "timeOut" is NULL
WHERE "employeeID" AND "currentDate"
THEN
UPDATE "timeRecords" SET "jobDescription", "timeOut"
WHERE "employeeID" AND "currentDate"
THEN
INSERT "timeIn", "employeeID", "currentDate"
有没有办法在MySQL中编写这个?如果是这样,有人可以给我一个工作MySQL声明的例子,文档不足以让我理解它。 也许有一种更好的方法可以实现这一目标我不知道了吗?
答案 0 :(得分:3)
你真的不应该在你的SQL中使用if / then语句。 “控制结构”适用于像C,PHP或Java-SQL这样的语言,它们与“集合”有关。
在这种特殊情况下,请查看mysql“Replace”语句。对于您的场景,它可能是理想(“如果是新的,则插入;否则更新”):
http://www.mysqltutorial.org/mysql-replace.aspx
REPLACE INTO table_name(column_name1,column_name2,...)VALUES(value1,value2,...)