0

単一の期日の下で支払い履歴を集約し、以下に同様に表示される html テーブルを作成しようとしています。

+--------------+---------------+----------------+
| Date Due     | Amount Paid   |   Date Paid    |
+--------------+---------------+----------------+
| Nov, 1 2012  |           $10 |   Oct, 21 2012 |
|              |           $15 |   Oct, 18 2012 |
| Oct, 14 2012 |           $20 |   Oct, 13 2012 |
|              |           $20 |   Sep,  3 2012 |
+--------------+---------------+----------------+

私が直面している問題はこれです:

期日、支払額、および支払日データ フィールドはすべて同じテーブル行にあります。期日は、実際の支払いが行われた日と必ずしも一致しません (支払いが 3 週間遅れた可能性があります)。または... 1 回の支払い期限内に 2 回の支払いが行われた可能性があります。

このような問題に効率的に取り組み、表に表示するにはどうすればよいでしょうか? 私はすでにいくつかの方法を試しましたが、コードはシステム プロセスに集中しすぎています。

編集: データベースのテーブルの行は現在、次のようになっています。

+--------------+---------------+----------------+
| Date Due     | Amount Paid   |   Date Paid    |
+--------------+---------------+----------------+
| Nov, 29 2012 |           $10 |   Oct, 21 2012 |
| Nov, 15 2012 |           $15 |   Oct, 18 2012 |
| Nov,  1 2012 |           $20 |   Oct, 13 2012 |
| Oct, 14 2012 |           $20 |   Sep,  3 2012 |
+--------------+---------------+----------------+

しかし、顧客は期日ごとに 50 ドルを支払わなければなりません。この場合、顧客は支払いを分割しましたが、テーブルでのデータの形式が原因で、現在の期日に適用されませんでした。

残念ながら、データベース内の何も変更できません。

4

2 に答える 2

1

クエリは次のようになります

 select * from table_name order by Date_Due ASC,Date_Paid ASC , Amount_Paid ASC

このクエリは、まず ofDate_Dueで昇順で並べ替え、その後で andDate_Paidで並べ替えますAmount_Paid

于 2012-12-12T04:52:04.160 に答える
0

クエリが 1 つのフラット テーブルにあると仮定すると、各期日を (すべての行ではなく) 1 回だけ表示したいだけのように思えます。

それが正しければ、mysqlの結果でこれを達成しようとするのではなく、テーブルを構築するphpコードで問題に取り組むべきだと思います。

于 2012-12-12T04:58:42.113 に答える