我研究并意识到我有一个独特的情况。
首先,由于我是新用户,因此我还不允许将图像发布到板上,因此请参阅下面的相应链接
我有多个表,其中列(不总是标识符列)按顺序编号,并且编号不应有任何中断。我的目标是确保这保持真实。
Down and Dirty 我们有一个“事件”表,我们在其中随机选择一定百分比的行并将这些行插入到表“结果”中。“结果”中的“ID”列被传递给一堆删除查询。
这或多或少确保了多个表中缺少行。
我的问题:找出一个 sql 查询,它将重新编号我指定的列。我宁愿不删除该列。
删除查询示例:
delete ItemVoid
from ItemTicket
join ItemVoid
on ItemTicket.item_ticket_id = itemvoid.item_ticket_id
where itemticket.ID in (select ID
from results)
之前的示例表:
之后的示例表:
如您所见,根据 ID 列从两个表中删除了 2 行。所以现在我要弄清楚如何重新编号 item_ticket_id 和 item_void_id 列,其中较高的数字减少到缺失值,下一个最高的减少,等等。问题 #2,如果 item_ticket_id 更改以便在 ItemTickets 中连续,然后它必须更新 ItemVoid 的 item_ticket_id 中的更改。
我很感激您对此提供的任何建议。