标签: sql sql-server sql-server-2012
我有一个简单的存储过程,其中包含一个插入select语句。问题是SQL Server有时会尊重TVP的顺序,有时则不会。我的意思是,如果TVP包括
row2 =(1,'a'),(2,'b')。
SQL Server随时插入该记录
(1,'a'), (2,'b')
有时候
(2,'b'), (1,'a')
如何解决此问题?
答案 0 :(得分:2)
如果您没有在select语句中定义Order BY,请查看this,如前所述,并不保证它会按特定顺序排列。因此,如果需要,请始终指定排序顺序。
Order BY
表值参数几乎没有优势,其中之一就是
启用客户端以指定排序顺序和唯一键。
请查看上面提到的一个和其他here
答案 1 :(得分:0)
如果您需要任何特定订单,则可以在order by查询中始终使用select。
order by
select