如何编写Linq查询来选择给定字符串中的最后一个最大数字?

时间:2012-05-02 11:15:05

标签: sql-server string linq linq-to-sql

我的数据库中的列中包含这些字符串。我基本上生成slug并且不想复制任何字符串。字符串可以是任何顺序。
如何使用linq有效地获取这些字符串中最大的数字?

示例1:

slug 

hhhh
hhhh-2 
hhhh-2-3
hhhh-4
hhhh-5
hhhh-2-4

以上最大数字为5。

示例2:

slug 

hhhh
hhhh-2 
hhhh-2-3
hhhh-4
hhhh-2-4

以上最大数字是4.

1 个答案:

答案 0 :(得分:2)

如果没有适当的数据库架构,你绝对没有办法高效地

如果您需要始终能够查询此最大数字,则应创建一个包含" slug"的表格。和"最大数量"列并更新" max num"无论何时你必须。

但是,您可能需要查看为什么要执行此操作。例如,如果您想要防止双重使用但实际的冲突很少,那么您实际上 需要才能提高效率。