我有一个任务分配系统,我想将人员分配给某些任务。该表的布局如下:
+---------+---------+-------------+-------------+-------------+
|Task name| person1 | person2 | person3 | person4 |
+---------+---------+-------------+-------------+-------------+
如果一个任务已经分配给例如2个人,则我希望更新功能填充3个人。因此,它基本上检查值是否为空,如果是,则输入数据,否则检查下一列中的值是否为空并将其放在那里,并在所有列中继续执行此操作。
我已经尝试过了,但这会输出一个错误:
UPDATE data SET IF(person1 IS NULL, person1,
IF(person2 IS NULL,person2,
IF(person3 IS NULL, person3,
IF(person4 IS NULL, person4,
IF(person5 IS NULL, person5, person6)))))
='$person_name' WHERE id=$id
这将输出以下错误:
您的SQL语法有误;检查与您的MariaDB服务器版本相对应的手册以在'IF(person1 IS NULL,person1,IF(person2 IS NULL,person2,IF(person3 IS NULL,back,back')''附近使用正确的语法
但是据我所知这是一个普遍的错误。
呼唤远方
qq_遁去的一_1