请考虑以下表模式:
----------------------------------
| ID | MinValue | MaxValue |
----------------------------------
| 1 | 0 | 10 |
| 2 | 11 | 20 |
| 3 | 21 | 30 |
Run Code Online (Sandbox Code Playgroud)
我希望能够传递一个整数,并让它返回适当的ID,其中该值与Min和Max Value之间的范围匹配.
例如:
Input = 17
Output = 2
Input = 4
Output = 1
Input = 26
Output = 3
Run Code Online (Sandbox Code Playgroud)
我以为我可以这样做:
SELECT ID FROM MyTable WHERE MinValue >= @input AND MaxValue <= @input
Run Code Online (Sandbox Code Playgroud)
但它不起作用,没有任何返回.
我确信这个解决方案很简单,但我很难过.
在SQL Server中实现此目的的最佳方法是什么?
我有一个包含Transaction对象的List.我想要做的是找到具有相同transaction.Buyer.UserID的所述List中的事务,并将它们组合成列表列表.
每个Sub-List项将包含多个事务对象,其中transaction.Buyer.UserID是相同的.
到目前为止我所拥有的是:
var _ordersToCombine =
_transactions.GroupBy(transaction => transaction.Buyer.UserID).Select(transaction => transaction);
Run Code Online (Sandbox Code Playgroud)
我进来的是:
List<Transaction>:
Transaction { Buyer.UserID = "User1" ...}
Transaction { Buyer.UserID = "User2" ...}
Transaction { Buyer.UserID = "User1" ...}
Transaction { Buyer.UserID = "User3" ...}
Transaction { Buyer.UserID = "User4" ...}
Transaction { Buyer.UserID = "User3" ...}
Run Code Online (Sandbox Code Playgroud)
我期望它返回的是:
List<List<Transaction>>:
List<Transaction>:
Transaction { Buyer.UserID = "User1" ...}
Transaction { Buyer.UserID = "User1" ...}
List<Transaction>:
Transaction { Buyer.UserID = "User3" ...}
Transaction { Buyer.UserID = "User3" ...}
Run Code Online (Sandbox Code Playgroud)
...并且还从主列表中删除这些事务,因此在此示例中,主列表将如下所示:
List<Transaction>:
Transaction …Run Code Online (Sandbox Code Playgroud)