会社の会計年度:7月1日~6月30日
会計年度累計の製品別およびコスト センター別の総ユニット数と $ 収益を取得しようとしているクエリがあります。月の 1 日に実行され、前月の最終日まで調べます。会計年度はレポートに表示されません - それは基準です。
Mix of pseudocode and SQL:
Where
If datepart(mm,getdate()) - 1 < 7
THEN
transaction_post_date BETWEEN 7/1/ previous year AND dateadd(day,-(day(getdate()),getdate())
Else
transaction_post_date BETWEEN 7/1/current year AND dateadd(day,-(day(getdate()),getdate())
私は書き込みトラックにいますか?SQL - 7/1/当年に依存する年の特定の日付の SQL を作成するにはどうすればよいですか?
私は変数を使用するのが苦手で、ロックダウンされている SQL Server DB でそれらを作成するアクセス権があるかどうかさえわかりません。確かに関数を作成することはできません。(私はビジネスアナリストです。)
更新、会計年度が進むため、2010 年 7 月 1 日は会計年度 2011 です。
私はこれがうまくいくと思います:
Year(dateadd(month,6,htx.tx_post_date)) = Year(DateAdd(Month, 5, GetDate()))
フィードバック?
そして今、数量と収益の会計年度累計フィールドを次のクエリに追加するように求められました。
Select
inv.ITEM_CODE
, inventory.ITEM_NAME
, cc.COST_CENTER_CODE
, tx.REV_CODE_ID
, tx.PRICE
, tx.ITEM_SALE_ID
, sum(tx.quantity)
, sum(tx.amount)
from
transactions tx
inner join inventory inv on inv.item_id = tx.item_id
left outer join cost_center cc on cc.cost_center_id = tx.cost_center_id
where
DATEPART(mm, tx.tx_date) = DATEPART(mm,dateadd(m,-1,getdate()))
and DATEPART(yyyy, tx.tx_date) = DATEPART(yyyy,dateadd(m,-1,getdate()))
group by
inv.ITEM_CODE
, inventory.ITEM_NAME
, cc.COST_CENTER_CODE
, tx.REV_CODE_ID
, tx.PRICE
, tx.ITEM_SALE_ID
このレポートに会計年度累計の数量と金額の列を追加する必要があります。ところで、相関サブクエリはありますか? 結合は難しいでしょうか?集計/グループ化クエリでサブクエリを使用したことはありません。
以前のすべてのヘルプに感謝します。