sql server case when 多个条件
时间: 2024-12-12 07:15:26 浏览: 10
`CASE WHEN` 是 SQL Server 中的一个表达式,用于根据指定的条件返回不同的结果。在 C# 中,如果你要处理来自 SQL Server 的查询结果并进行多个条件判断,你可以使用 `SqlCommand`, `SqlDataReader`, 和 `DataTable` 或 `DataSet` 结合 LINQ 来实现。
以下是一个简单的例子,展示了如何在 C# 中使用 `CASE WHEN` 进行多个条件的逻辑:
```csharp
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(
"SELECT ProductID,
CASE
WHEN Quantity > 10 THEN 'High Stock'
WHEN Quantity >= 5 AND Quantity <= 10 THEN 'Medium Stock'
ELSE 'Low Stock'
END AS StockLevel
FROM Products", connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
int productId = reader.GetInt32(0);
string stockLevel = reader.GetString(1); // 假设索引从0开始
Console.WriteLine($"Product ID: {productId}, Stock Level: {stockLevel}");
}
reader.Close();
}
```
在这个例子中,我们根据 `Quantity` 列的值设置了三个条件:大于 10 表示高库存,5 到 10 包含之间表示中等库存,其他则为低库存。
阅读全文