0

USERとSCOREのみを列として持ち、mysqlとDBを使用する単純なjasperレポートがあります。これで、レポートは正常に機能します。ただし、合計SCOREを合計して、レポートの下部に表示したいと思います。これどうやってするの?クエリで単純なsum(SCORE)を実行すると、目的の合計が取得されますが、返される行は1つだけです。すべての行を表示すると同時に、その合計スコアを表示したいと思います。誰か助けてもらえますか?ありがとうございました。

4

2 に答える 2

2

JasperReports 変数を使用できます。変数式$F{score}を使用してSum型の変数を作成します。次に、レポート内の任意の場所にドラッグすると、テキスト フィールドとして表示されます。要約バンドに入れない場合は、テキスト フィールドの評価時間がReportに設定されていることを確認してください。

これを実現するためにクエリを変更する必要はありません。

于 2013-02-06T08:47:47.750 に答える
1

次のようなものを使用したいようです:

SELECT userId, SUM(score)
FROM userScores
GROUP BY userId WITH ROLLUP;

NULLこれにより、各ユーザー ID とその合計スコアの行、およびforと合計スコアを含む「ロールアップ」行が返されますuserId

詳細については、ドキュメントを参照してください。

于 2013-02-06T04:00:36.093 に答える