資料庫的資料如下
stampday employeecd stamptype stamptime
2007-02-28 2200399 1 08:02:00.000
2007-02-28 2200399 2 18:01:00.000
2007-03-01 2200399 1 08:08:00.000
(3 件処理されました)
這裡stamptype 為1的是出勤 2的時候是退勤
我想得到資料如下
stampday employeecd 出勤 退勤
2007-02-28 2200399 08:02 18:01
2007-03-01 2200399 08:08 null
我做了乙個,能夠實現,但是顯示兩條同樣的資料,如下
stampday employeecd 出勤 退勤
2007-02-28 2200399 08:02 18:01
2007-02-28 2200399 08:02 18:01
2007-03-01 2200399 08:08 null
經過處理可以實現乙個,但是個人認為方法太笨,再次向各位高手求教其他方法
select
stampday,
employeecd,
max(case stamptype when 1 then stamptime else null end) as 出勤,
max(case stamptype when 2 then stamptime else null end) as 退勤
from tablename
group by stampday,employeecd
一條分兩條
一條拆成兩條 統計當前客戶經理和客戶關係,上年底客戶經理和客戶關係 如果客戶經理和客戶關係跨越這兩個時間段,那麼一條分成兩條 with basic t as 客戶和客戶經理關係表 select 123 cust no,a am no,20091231 start dt 29991231 end dt...
MySQL 兩條記錄合併查詢成一條顯示
資料庫資料如下 張三,屬於a部門也屬於b部門,在表裡存的是兩條記錄,但是在頁面上我想要根據人來顯示,在一條記錄裡顯示張三屬於a部門和b部門,張三隻顯一條記錄,不顯示兩條。select t.id,t.code,t.name,max case t.type when a then t.dept name...
mysql 查詢鄰近的兩條記錄並合併成一條
現有乙個簽到表,需要查出每個人的每次簽到和簽出時間 t sign表結構和資料如下 id user type time1a in2016 10 10 09 00 002b in2016 10 10 09 05 003b out2016 10 10 10 00 005a out2016 10 10 11...