1. 一个"随机取一条"的需求,为什么被我一路扯到了存储过程
1.1 从一次抽检订单的临时任务说起
上个星期接到一个风控抽检的需求:每天从订单表里随机抽一条订单,交给人工再做一次复核。我的手指刚敲出 SELECT TOP 1 * FROM dbo.Orders ORDER BY NEWID(),自己就先停了。这句话在测试库跑得很欢,可我心里清楚,一旦订单量上到百万级,又或者系统要每隔几分钟自动调用一次,"随机查询"就没表面上那么轻巧。
随机查询这个需求,很多开发第一次上手都会

上个星期接到一个风控抽检的需求:每天从订单表里随机抽一条订单,交给人工再做一次复核。我的手指刚敲出 SELECT TOP 1 * FROM dbo.Orders ORDER BY NEWID(),自己就先停了。这句话在测试库跑得很欢,可我心里清楚,一旦订单量上到百万级,又或者系统要每隔几分钟自动调用一次,"随机查询"就没表面上那么轻巧。
随机查询这个需求,很多开发第一次上手都会