こんにちは、おそらくコードを複雑にしすぎているので、より良い方法を探しています。
請求書テーブルがあり、2 つの日付範囲を比較しています。日付が範囲 1 にあることを確認する単純な SQL ステートメントを探しています。ordertotal1 に追加します。そうでない場合は、日付範囲 2 に追加します。
これは私の試みです
SELECT CUST_CODE,
CASE
WHEN ORDER_DATE >= CONVERT(DATETIME, '2011-01-01 00:00:00', 102) AND ORDER_DATE <= CONVERT(DATETIME, '2011-07-31 23:59:59', 102) THEN SUM(INV_AMOUNT) AS OrderTotal, SUM(PAID_AMT) AS paidTotal
WHEN ORDER_DATE >= CONVERT(DATETIME, '2012-01-01 00:00:00', 102) AND ORDER_DATE <= CONVERT(DATETIME, '2012-07-31 23:59:59', 102) THEN SUM(INV_AMOUNT) AS OrderTotal2, SUM(PAID_AMT) AS paidTotal2
END
FROM INVOICES
WHERE (STATUS = 9)
GROUP BY CUST_CODE
もちろん、これは本当に間違っており、多くのエラーが発生します。それを達成するために、php でいくつかのクエリを実行する運命にあると思いますが、過去に上記のようなことをしたことを覚えていると確信しています。
参考までに:Windows用のApache 2.2でphp 5 Mssql 2000を実行しています(選択によるものではありません)。
提供されたヘルプに感謝します