2012-07-25 62 views
0

好的,我們開始吧。顯示每個分支的每日銷售額mysql

我有2個表格。

表1 =分支 含有

branch_id branch_name

表2 = SALES_DATA 含有

sales_id sales_date sales_branch sales_profit

我需要顯示每個分支的每日總銷售額和每日總利潤。我知道如何將結果帶回給定的一週等,我只是在如何撤回數據方面非常掙扎。

我還需要在所有的時間來顯示所有的樹枝,如果他們沒有賣過任何東西顯示爲0。

我已經把一個快速的圖像(http://i37.photobucket.com /albums/e71/dannyflap/screen_shot.jpg)我如何完成。這真是我發瘋:(

UPDATE

select sales_branch, WEEKDAY(sales_date), COUNT(sales_profit), SUM(sales_profit) 
FROM sales_date 
GROUP BY sales_branch, WEEKDAY(sales_date) 

這則帶回了下面的例子。圖是由。

sales_branch, day, units, profit: 

| branch1 | 0 (as day) | 16 | 439 | 

| branch1 | 1 (as day) | 12 | 651 | 

| branch1 | 2 (as day) | 22 | 312 | 

| branch1 | 3 (as day) | 61 | 614 | 

| branch1 | 4 (as day) | 12 | 541 | 

| branch1 | 5 (as day) | 24 | 102 | 

| branch1 | 6 (as day) | 21 | 145 | 
+0

到目前爲止你有什麼?你有什麼嘗試?哪裏出問題了? – databyss 2012-07-25 20:27:51

+0

我已添加我目前爲止的內容 – 2012-07-25 20:39:54

回答

0

你將需要一個外鍵sales_data映射到分支

假設sales_branch與branch_name或branch_id不同,sales_data應該包含:

sales_id sales_date sales_branch branch_id sales_profit 

另外 - 你應該發佈你的代碼來獲得給定周的結果,我們可以幫助你建立,而不是給你整個答案。

編輯 確定與修改您SALES_DATA表有一個外鍵branch_id分支表,此查詢應該讓你更接近你在找什麼。

SELECT b.branch_name, WEEKDAY(s.sales_date), COUNT(s.sales_profit), SUM(s.sales_profit) 
FROM branch b 
LEFT OUTER JOIN sales_data on s.branch_id = b.branch_id 
GROUP BY b.branch_id, WEEKDAY(s.sales_date) 
+0

當報告銷售額時,branch_name用於填充下拉框,該銷售額作爲sales_branch添加到sales_data(如果有意義)。 – 2012-07-25 20:28:52

+0

選擇sales_branch,WEEKDAY(sales_date),COUNT(sales_profit),SUM(sales_profit) FROM sales_date GROUP BY sales_branch,WEEKDAY(sales_date) 這於是帶回下面的例子。數字組成。 sales_branch,日,單位,利潤: | branch1 | 0(當天)| 16 | 439 | | branch1 | 1(當天)| 12 | 651 | | branch1 | 2(當天)| 22 | 312 | | branch1 | 3(當天)| 61 | 614 | | branch1 | 4(當天)| 12 | 541 | | branch1 | 5(當天)| 24 | 102 | | branch1 | 6(當天)| 21 | 145 | – 2012-07-25 20:30:34

+0

您不應該存儲分支名稱兩次。您應該將branch_id作爲分支表中的branch_id的外鍵存儲在sales_data表中。 – Catfish 2012-07-25 20:31:37

0

我猜你會做外連接的表1的branch_id和表2的sales_branch和遍歷結果產生的表。我認爲,對於外部聯合,那些沒有出售任何東西的分支將獲得NULL

難道是表格產生問題嗎?我不認爲爲這個問題做一些壯觀的SQL是明智的。我的兩分錢。

+0

是的,這也是我無法挽回他們的結果 – 2012-07-25 20:37:46

相關問題