Как получить уникальное значение от SQL Сервера в C# - PullRequest
1 голос
/ 11 июля 2020

Я хочу выбрать отдельное значение в запросе, но он показывает несколько значений. В моем столбце имени указано 2 одинаковых имени. Я думаю, что это уникальное значение, но я не знаю, что происходит.

Вот мой запрос

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

1 Ответ

1 голос
/ 11 июля 2020

Чтобы ваш набор результатов отличался от 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
...