【问题标题】:How to get unique value from SQL Server in C#如何在 C# 中从 SQL Server 获取唯一值
【发布时间】:2020-07-10 23:18:26
【问题描述】:

我想在查询中选择不同的值,但它显示了多个值。我的姓名栏中有 2 个相同的姓名。我认为 distinct 是为了独特的价值,但我不知道发生了什么。

这是我的查询

string lakhas1 = "SELECT DISTINCT
NAME,EXPENSE,AMOUNT1,AMOUNT2,AMOUNT3,AMOUNT01,AMOUNT02,AMOUNT03 FROM
INCOME ORDER BY NAME";
DataTable dt1 = DataAccess.GetDataTable(lakhas1);

【问题讨论】:

  • DISTINCT 将由所有选定的字段执行。
  • 为了获得不同的结果,您需要仅在名称列上应用 distinct
  • 请看这个imgur.com/GQIx2Ab
  • @TechNew,您需要发布一些示例数据和预期结果。然后人们将能够提供帮助。
  • imgur.com/oY6wOJL 这是示例数据,希望现在大家能更好地理解

标签: c# jquery sql error-handling group-by


【解决方案1】:

为了使您的结果集与name 不同,您可以使用group by 关键字对记录进行分组。执行此操作时,您要选择的任何其他列要么必须是分组依据的一部分(即,使记录不同的键的一部分),要么必须在聚合函数中使用。

在这种情况下,我假设您想将记录中的值相加。但是,您可以使用 min()max() 一样。

select
    name,
    sum(expense) as expense,
    sum(amount1) as amount1,
    sum(amount2) as amount2,
    sum(amount3) as amount3,
    sum(amount01) as amount01,
    sum(amount02) as amount02,
    sum(amount03) as amount03
from dbo.income
group by name
order by name

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-08
    • 2018-11-08
    • 1970-01-01
    • 2012-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    相关资源
    最近更新 更多