如何使用下面的SQL將3個表組合在一起?SQL查詢組合表
----------- ----------- -----------
AdminAccLog StaffAccLog PublicAccLog
----------- ----------- -----------
id id id
name name name
ipaddress ipaddress ipaddress
datetime datetime datetime
task task task
---------------------------------------
數據
AdminAccLog 1 ABC 127.0.0.1 30/7/2017 0:00:00AM Logon
AdminAccLog 2 ABC 127.0.0.1 30/7/2017 1:00:00AM Logon
AdminAccLog 3 ABC 127.0.0.1 31/7/2017 0:00:00AM Logon
StaffAccLog 1 ABC 127.0.0.1 31/7/2017 0:00:00AM Logon
PublicAccLog 1 ABC 127.0.0.1 31/7/2017 0:00:00AM Logon
SQL查詢
SELECT COUNT(*) AS PublicCount, CONVERT(DATE, datetime) AS PublicDate
FROM PublicAccLog WHERE task = 'Logon'
GROUP BY CONVERT(DATE, datetime)
SELECT COUNT(*) AS StaffCount, CONVERT(DATE, datetime) AS StaffDate
FROM StaffAccLog WHERE task = 'Logon'
GROUP BY CONVERT(DATE, datetime)
SELECT COUNT(*) AS AdminCount, CONVERT(DATE, datetime) AS AdminDate
FROM AdminAccLog WHERE task = 'Logon'
GROUP BY CONVERT(DATE, datetime)
我想要的查詢結果是這樣在同一個表(未插入表)
新的查詢結果be:
----------- ---------- ---------- --------- ---------- ---------
PublicCount PublicDate StaffCount StaffDate AdminCount AdminDate
----------- ---------- ---------- --------- ---------- ---------
1 31/7/2017 1 31/7/2017 2 30/7/2017 0:00:00AM
1 31/7/2017 0:00:00AM
又如:
編輯你的問題,並提供樣本數據和預期的結果。如前所述,這在SQL中看起來並不是一個明智的做法,因爲單行上的列不相互關聯。 –
請閱讀http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-images-of-code-on-so-when-asking-a-question/285557和接受的答案 –