2

我很难理解有关使用 IF 语句的 MySQL 文档,我希望有人可以为我简化它。我什至不知道是否最好使用 MySQL IF 语句来完成我想要完成的工作,或者是否有更好的方法使用 PHP 来完成。我正在尝试创建一个在线考勤卡系统,目前仅用于学习/实验。我有三个按钮“打卡”“更新”和“打卡”。“打卡”非常简单,我所做的就是在表格中添加“员工 ID”和“时间”以及“日期”。“更新”功能就是我现在所在的位置。所以我想做的是:

  1. 将几个 PHP 变量添加到表中的指定列。
  2. 将当前时间添加到“超时”列。
  3. 将当前时间添加到具有相同“员工 ID”的新行中的“时间”列中。

所以我想做的声明是这样的:

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 语句的示例,该文档没有提供足够的内容让我理解它。也许有更好的方法来完成我缺少的这个?

4

1 回答 1

3

你真的不应该在你的 SQL 中使用 if/then 语句。“控制结构”适用于 C、PHP 或 Java 等语言 -SQL 是关于“集合”的。

在这种特殊情况下,请查看 mysql 的“替换”语句。它可能是您的场景的理想选择(“如果是新的,则插入;否则更新”):

于 2013-01-13T01:13:17.093 回答