我有一个有趣的问题:我有一个函数可以得到一个逗号分隔的整数字符串。
这里有2个处决:
select ID from dbo.udf_NumList2table ('124,126,132,180,176')
select RP.ID, My.ID
from dbo.udf_NumList2table ('124,126,132,180,176') RP join MyTable My
on RP.ID=My.ID
在第一次执行中,结果的顺序就像字符串中数字的顺序一样。在第二次执行中,结果的顺序是升序的(176 在 180 之前)。
为什么?我猜想 MyTable 中列 ID 上的 PK 是原因 - SQL 更喜欢在键上运行。
我说得对吗?