У меня есть строка SQL с различными суммами.Как мне их сложить.СЕТЬ? - PullRequest
0 голосов
/ 31 января 2012

У меня следующий запрос SQL:

SELECT * from sales WHERE cdate = (SELECT CONVERT(char(11), GETDATE(),20)) 

С этим результатом:

<b>ID  NO      DATE                    AMOUNT</b>

9   103100  2012-01-31 00:00:00.000 44.29

10  110150  2012-01-31 00:00:00.000 2360.93

11  114000  2012-01-31 00:00:00.000 63.60

12  217155  2012-01-31 00:00:00.000 717.27

Как добавить значения в последнем столбце (amount)?

Ответы [ 2 ]

1 голос
/ 31 января 2012

Используйте запрос:

SELECT SUM(AMOUNT)
FROM YourTable
WHERE cdate = (SELECT CONVERT(char(11), GETDATE(),20)) 

и читайте в c #:

using(SqlCommand sc = YourOpenConnection.CreateCommand())
{
  sc.CommandText = @"
  SELECT SUM(AMOUNT)
  FROM YourTable
  WHERE cdate = (SELECT CONVERT(char(11), GETDATE(),20)) 
  ";
  Console.WriteLine(sc.ExecuteScalar());
}
1 голос
/ 31 января 2012

Вы можете сделать дополнения на стороне SQL Server, а затем просто получить результат в своем коде C #, используя ExecuteScalar:

SqlCommand cmd = new SqlCommand("SELECT sum(amount) from sales WHERE cdate = (SELECT CONVERT(char(11), GETDATE(),20))", conn);
int sum = (int)cmd.ExecuteScalar();

Это предполагает, что у вас есть открытое соединение conn, котороеуказывает на нужный сервер.

...