ここで少し問題が発生しました。何らかの理由でこれを行う簡単な方法が見つかりません。日付間の総売上を取得する機能がありますが、上司は曜日ごとの総売上を取得できるようにしたいと考えています。たとえば、月曜日から までのすべての売上の合計7/1/13
です8/1/13
。
これらの日付間の売上を合計するクエリを次に示します。
SET NOCOUNT ON
SET CONCAT_NULL_YIELDS_NULL OFF
SELECT tblItem.dateOrder,
tblMerchPack.strMerchPackCategory + tblPayTypeID.strPayTypeName AS strMerchPackCategory,
tblMerchPack.strMerchPackID,
tblMerchPack.strMerchPackName + tblPayTypeID.strPayTypeName AS strMerchPackDescription,
tblMerchItem.strMerchItemID,
tblMerchItem.strMerchItemName + tblPayTypeID.strPayTypeName AS strMerchItemDescription,
tblItem.lngQuantity,
tblItem.curPrice,
tblItem.curPriceDiscount,
tblItem.curTaxA,
tblItem.curTaxB,
tblPay.curTender - tblPay.curChange AS curPayment,
tblStoredValue.curCash AS curStoredPayment,
CASE
WHEN tblItem.lngMerchItemID IS NULL
THEN - 1
WHEN tblItem.lngMerchItemID > 0
THEN 0
WHEN tblPayTypeID.lngPayTypeID IS NULL
THEN 1000
WHEN tblPayTypeID.lngPayTypeID > 0
THEN tblPayTypeID.lngPayTypeID
ELSE - 1
END AS 'lngPaymentSort'
FROM tblItem
LEFT JOIN tblPay ON tblItem.lngItemID = tblPay.lngItemID
LEFT JOIN tblStoredValue ON tblItem.lngItemID = tblStoredValue.lngItemID
LEFT JOIN tblPayTypeID ON tblPay.lngPayTypeID = tblPayTypeID.lngPayTypeID
LEFT JOIN tblMerchItem ON tblItem.lngMerchItemID = tblMerchItem.lngMerchItemID
LEFT JOIN tblMerchPack ON tblItem.lngMerchPackID = tblMerchPack.lngMerchPackID
WHERE (
tblItem.dateOrder BETWEEN '7/1/2013 5:00:00 AM'
AND '8/1/2013 4:59:59 AM'
)
ORDER BY lngPaymentSort,
strMerchPackCategory,
strMerchItemDescription