2012-04-07 48 views
1

我有兩個表Employee和Salary表,salary包含名爲Salary_employee的字段中的員工薪水。 第二個是額外費用,額外費用包括與公司額外費用有關的記錄,例如電費,辦公室維護費用在名爲extra_expense的字段中。從單個報表中的兩個不同表中檢索數據

(他們是這兩張表之間沒有關係)。

最後,我只是想在報告中顯示公司的所有費用,因爲我需要對這兩個表進行分組。在這裏使用什麼連接或聯合?

回答

2

如果在兩個表之間沒有任何關係,那麼這真的不能,因爲你不知道在哪裏的費用應該扎入工作。根據您的描述,您應該儘可能重新設計數據庫,因爲這聽起來不可能。

UPDATE

OK,你的截圖上來看,我猜測,這個數據庫只存儲一個公司的信息?而不是多個?

如果這是正確的,並且如果您只想將數據一起壓縮成流量費用報告,那麼我確實會建議UNION。 A JOIN不會給你你正在尋找的流程。 A UNION只會將兩個輸出合併爲一個......我認爲這是您要求的內容?

SELECT ext_amount AS amount, ext_date AS date_of_trans 
FROM extra_expenses 
UNION 
SELECT sal_cash AS amount, sal_dateof_payment AS date_of_trans 
FROM employee_salary 
+0

嘿賈斯汀我已經上傳了它的屏幕截圖,看看謝謝 – San 2012-04-07 18:51:28

+0

@San更新了我的答案。如果我的假設是正確的,那麼UNION應該沒問題。我很習慣數據庫持有多個公司的信息,我認爲你需要一個公司標識符 – 2012-04-07 19:00:37

+0

這爲我工作,謝謝一噸賈斯汀。 – San 2012-04-07 19:17:47

1

這聽起來像你不需要使用組加入。只需在腳本中單獨查詢兩個表格,並根據其結構處理它們以生成報告。

聯合和聯合是您可以用來從不同表格中提取常見事物的不同信息的函數。例如。如果您的用戶的私人信息存儲在一個表中,但其個人信息位於另一個表中。如果要同時顯示私人詳細信息和個人資料信息,則可以通過普通用戶名加入這兩個表,以便在一個查詢中合併和收集用戶的所有信息。

相關問題