php - 停止向表中插入值
问题描述
我有两张桌子。一个是项目表,另一个是问题表。问题表使用对 item_id 的外键引用。
我正在使用发放表向我的员工发放项目并将项目数量扣除到我的项目表中。发放项目并扣除项目表上的数量没有问题,我想要的是当数量变为零时,员工姓名将停止向问题表插入值。因为每次我尝试发出该值时,即使项目表中的数量为零,该值也会插入到发出表中。
if row is greater than zero, do not proceed. else insert it to this table.
希望你能理解。
解决方案
粗鲁...
DROP TABLE IF EXISTS my_table;
CREATE TABLE my_table (id SERIAL PRIMARY KEY,balance INT NOT NULL);
INSERT INTO my_table VALUES (1,100);
INSERT INTO my_table (balance) SELECT MIN(balance-50) FROM my_table HAVING MIN(balance-50) >= 0;
SELECT * FROM my_table;
+----+---------+
| id | balance |
+----+---------+
| 1 | 100 |
| 2 | 50 |
+----+---------+
INSERT INTO my_table (balance) SELECT MIN(balance-50) FROM my_table HAVING MIN(balance-50) >= 0;
SELECT * FROM my_table;
+----+---------+
| id | balance |
+----+---------+
| 1 | 100 |
| 2 | 50 |
| 3 | 0 |
+----+---------+
INSERT INTO my_table (balance) SELECT MIN(balance-50) FROM my_table HAVING MIN(balance-50) >= 0;
SELECT * FROM my_table;
+----+---------+
| id | balance |
+----+---------+
| 1 | 100 |
| 2 | 50 |
| 3 | 0 |
+----+---------+
推荐阅读
- python-3.x - 我的 Python 设置太复杂了,我不明白。目前我的 Python 无法使用。欢迎提供建议
- clang - 确定成员调用在 Clang AST 中是否是虚拟的
- python - 用python从csv到文本文件
- spring-boot-admin - 通过 Spring Cloud Kubernetes Service Discovery 向 Spring Boot Admin 发送客户端安全用户名和密码
- java - 如何构建 org.jooq.Result 进行单元测试
- c++ - 在这种情况下,使用 string_view 会导致不必要的字符串复制吗?
- react-native - 如何将项目 ID 传递给 Swipeable 以删除或编辑具有此 ID 的项目
- ios - 如何使用 swift 在 instagram 中构建用户个人资料页面?
- jpos - 浏览 IsoMsg 的子标签并获取 jPOS 的值
- amazon-web-services - AWS DMS-Oracle 到 S3