私はちょっとSqlに関する何かを知っている人を学ぶのは難しいと言っていますが、まだ問題があります。基本的に私は支出があるテーブルを持っていますまたは収益、私は2つの日付の間に検索するときにトラブルがある統計情報を行うためにいくつかの値私はそれが起こることを知っているときに2つの日付の間に検索するときに私はちょうど経費と収益ではないと、どのように私は選択内のすべての属性のデフォルト値を置くことができますか?クエリのselectからデフォルト値を取得
[HttpPost]
public ActionResult Index(string dataInicial, string dataFinal)
{
var userId = User.Identity.GetUserId();
var queryDefault = db.SaldoUtilizadores.Where(d => d.ApplicationUserId == userId)
.GroupBy(x => x.ApplicationUserId)
.Select(x => new
{
biggestValor = x.Max(y => y.valor),
lowestValor = x.Min(y => y.valor),
expenses = x.Where(y => y.valor < 0).Sum(y => y.valor),
earnings = x.Where(y => y.valor > 0).Sum(y => y.valor),
lowestDate = x.Where(y => y.valor == x.Min(z => z.valor)).Select(y => y.data).FirstOrDefault(),
biggestDate = x.Where(y => y.valor == x.Max(z => z.valor)).Select(y => y.data).FirstOrDefault()
}).FirstOrDefault();
すでに多くの検索が行われていますが、あなたが私に感謝してくれたら、具体的な回答が見つかりませんでした。
シモンズ:あなたの問題から
クエリでの問題は何である - などの実行時例外、誤った結果、? –
問題は、テーブル内の経費を含むビュー内で2つの日付を選択したときに発生します。なぜなら、収益は存在しません。クエリ内で発生したときに値を0に設定したいからです。 –
' x.Where(y => y.valor> 0).Sum(y => y.valor) 'これを行う? –