我在编写sql语句时遇到问题,无法创建一个触发器,可以对顶级客户的未来购买产生15%的折扣。只要将该顶级客户的新购买插入购买表中,它就会对购买金额减少15%。那么在插入新购买后我会添加一个触发器吗?我一直在阅读几本指南/教程,但想要一些帮助/指导。感谢
SELECT CLIENTNO, CNAME, SPA PURCHASE_AMOUNT
FROM (SELECT CLIENT.CLIENTNO, CLIENT.CNAME, SUM(PURCHASE.AMOUNT) SPA, RANK() OVER (ORDER BY SUM(PURCHASE.AMOUNT) DESC) RNK
FROM PURCHASE JOIN CLIENT ON PURCHASE.CLIENTNO = CLIENT.CLIENTNO
GROUP BY CLIENT.CLIENTNO, CLIENT.CNAME)
WHERE RNK = 1;
答案 0 :(得分:0)
听起来更好的解决方案可能是拥有一个DISCOUNTS表,触发器以15%(或0.15或0.85)的值填充/更新。然后,销售价格查找例程将在进行销售时考虑到这一点。 (这也可能会简化例如10%折扣的过程。)