select * from (
Select SakuseiHiduke,
case DakokuCode when '01' then max(SakuseiJikoku) else '' end as ShuKkinTime,
case DakokuCode when '02' then max(SakuseiJikoku) else '' end as TaiKinTime
from Temp
WHERE SyainID <> '000000000000000000009999999999'
and (DakokuCode = '01' or DakokuCode = '02')
and SakuseiHiduke BETWEEN '070801' AND '070831'
group by DakokuCode,SakuseiHiduke
) as tmp