感谢您的关注!
背景
我几乎没有使用 LAMP 堆栈的经验,但我最近开设了一个使用基于 LAMP 堆栈的 OpenCart的在线商店。
商店允许我为客户分配奖励积分,我给每个新客户 10 分,只是为了创建一个帐户。
不幸的是,OpenCart 管理 GUI 只允许我手动执行此操作,一次一个用户。
但是,我确实可以访问允许我运行 MySql 命令的界面,并且我想使用这种方法解决问题。
在 OpenCart 创建的数据库中,我有一个oc_customer
包含我所有客户的表,然后我有一个oc_customer_reward
表,它关闭客户 ID 并在每次客户获得积分时分配一条新记录。看起来是这样的:
问题
如何编写一个 MySql 查询来查看表中是否不存在客户oc_customer
,oc_customer_reward
如果他们不存在,然后在oc_customer_reward
表中为该客户创建一条记录(价值 10 分)?
我不是要求工作代码(除非你真的想提供它),我愿意自己做这项工作,但坦率地说,我不知道从哪里开始。方法是什么?
更新
根据奥拉夫的建议,我可以oc_customer_reward
通过他建议的查询让所有客户不在表中:
SELECT customer_id
FROM oc_customer
WHERE customer_id NOT
IN (
SELECT customer_id
FROM oc_customer_reward
)
现在,我只需要迭代该查询的结果(对不起,我不是数据库专家!)并oc_customer_reward
为每个查询插入一行。有点像foreach
C# 中的循环。有什么想法吗?