私は、次のクエリを実行しようとしていると私は、次のエラーを取得しています:構文エラー:予期しない「SUM」(和)
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'sum(sl.duration) as duration, sum(sl.quantity_loss) as quantity_loss'
SELECT
lr.uid AS loss_reason_uid,
gl.uid AS gl_uid,
lt.uid AS lt_uid,
SUM(sl.duration * b.marginal_value_downtime) AS value_loss where en.state = 'downtime',
SUM(sl.quantity_loss * p.marginal_value) as value_loss where en.state != 'downtime',
SUM(sl.duration) AS duration,
SUM(sl.quantity_loss) AS quantity_loss,
COUNT(*) AS count
FROM
sub_losses AS sl
任意のアイデアを、なぜこの構文エラーは発生していますか?
'group by'が必要で、' sum'に 'where'を使うことはできません。 'where'句がクエリではなく属性に適用されます。あなたは 'case'式を' sum'したいかもしれません。 – HoneyBadger
これらのエイリアスがどのように 'en'、' lr'、 'gl'で定義されているか完全な問い合わせを表示してください... –
2つの計算値を' value_loss'にリネームしています! – cdaiga