0
让我们假设我们有一个名为Reserations(PK, clientID, ORDER_NUMBER, CREDIT_CARD)
的表。客户可以进行多次预订,但是当CREDIT_CARD
不为空(意味着客户已预付订单)签证,万事达卡等时,预订被视为完成。Sql多个预留和重复价值
因此,我们有这张桌子充满了保留,我想按照以下规则进行清理:如果客户做出了有效的预订(信用卡不是NULL),那么如果此客户有其他未支付的预订(信用卡为空),我会自动为他保留(意思是我将在CREDIT_CARD
列中添加信用卡类型,该列对于此特定客户端为空)。否则,客户无效(不是一个有效的信用卡),他的记录将被删除。
如何在SQL微软访问中实现这一点?我的想法是: 选择表格,删除重复并更新记录。这里唯一的问题是如何知道是否至少有一个有效的预订?也许使用计数功能来计算每个客户端的有效预留量?
上帝非常感谢!这似乎工作得很好。我能问你一件事吗 ?当你说Reserations R时,这意味着R是重置权? (如果我没有弄错,重命名)和top(1)是?提前致谢。 – KostasRim
R仅仅是预约的别名,在第二个查询中,它用于与内部查询进行连接。 TOP(1)将返回包含该客户信用卡信息的单行。你必须在这里使用TOP(1),否则更新抛出错误,如果客户有多个记录与credit_card不为空 –
我的朋友,感谢解释它真的帮助我! Ps想重创,但我的声望低于15 :( – KostasRim