2016-10-24 27 views
0

通過使用SQL命令,列出idworker,worker表名和total_late中的nameworker,用於只有'遲'記錄超過1次的工作者。sql-如何在一個查詢中組合選擇列,計數和比較?

+0

這是不可能回答這樣的問題。請分享您的表格結構,一些樣本數據以及您試圖獲得的樣本結果。 – Mureinik

+0

你正在使用哪些DBMS? –

+0

[編輯]你的問題,並根據這些數據添加一些樣本數據和預期的輸出。 [_Formatted_](http://stackoverflow.com/editing-help#code)**文本**,請[無屏幕截圖](http://meta.stackoverflow.com/questions/285551/why-may-i - 未上傳圖像-的代碼上那麼當灰化-A-問題/ 285557#285557) –

回答

0

試試這個(假設有晚表,其中有對當工人晚各出現一條記錄):

SELECT w.idworker, w.nameworker, l.total_late 
FROM Worker w LEFT JOIN 
(SELECT idworker, SUM(late) as total_late, COUNT(*) AS number_late 
FROM Late GROUP BY idworker) l ON w.idworker = l.idworker 
WHERE number_late > 1