我正在处理一个 sql 查询,它传递一个值列表作为参数,例如
select *
from ProductGroups
where GroupID in (24,12,7,14,65)
该列表由整个数据库中使用的关系构成,并且必须按此顺序保存。
我想按此列表对结果进行排序。我只需要第一个结果,但在本例中它可能是 GroupId 7 的结果。
我无法像这样查询
order by (24,12,7,14,65).indexOf(GroupId)
有谁知道如何做到这一点?
附加信息:
构建连接并在 mssql 查询编辑器中运行它,但是...
由于将查询发送到 mssql 的软件的限制,我必须将其作为 1 个参数传递给某些内部查询生成器,即“24,12,7,14,65”。我事先不知道这个列表中有多少个数字,可能是 2,也可能是 20。