【问题标题】:C# Xamarin how to sum a column in SQLite with SELECTC# Xamarin 如何使用 SELECT 对 SQLite 中的列求和
【发布时间】:2018-05-31 21:55:58
【问题描述】:

我正在用 C# 中的 Xamarin 编写一个小程序,我需要对表中一列大于 0 的值求和...目前我通过以下方式实现了这一点:

var ent = conn.Table<Transaction>().Where(t => t.price > 0);
entLabel.Text = (ent.Sum(t => t.price)).ToString();

但我想使用 SELECT 脚本获得相同的结果。我试过这个:

var ent = conn.Query<Transaction>("SELECT SUM(price) FROM Transaction WHERE price > 0");
entLabel.Text = ent.ToString();

遗憾的是,结果不是数字,而是像“System.Collection.something.blahblah”这样的字符串。

我错过了什么吗?我在文档和其他网站中搜索了语法(粘贴在下面),看起来和我的一样。

SELECT SUM(column_name)
FROM table_name
WHERE condition;

【问题讨论】:

  • conn.Query&lt;Transaction&gt;("SELECT SUM(price) FROM Transaction WHERE price &gt; 0").FirstOrDefault();

标签: c# sqlite xamarin


【解决方案1】:

代替:

var ent = conn.Query<Transaction>("SELECT SUM(price) FROM Transaction WHERE price > 0");

用途:

 var ent = conn.ExecuteScalar<int> ("SELECT SUM(price) FROM Transaction WHERE price > 0");

ExecuteScalar 用于从数据库中返回一个标量值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-27
    • 2016-10-20
    • 2012-03-07
    • 2021-11-30
    • 2020-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多