sql中select查询的一个简单问题

表A结构如下:
设备编号 预检日期
A01 2014-1-2
A02 2014-6-7
A01 2015-3-2
A02 2015-9-1
怎样写SQL语句会得到下面的结果集,注意,得到3列,表中原来两列
设备编号 2014预检日期 2015预检日期
A01 2014-1-2 2015-3-2
A02 2014-6-7 2015-9-1
各位大侠,困扰我一下午了。。。。

这是SQL Server的写法。

     SELECT ISNULL(a1.设备编号,a2.设备编号) AS 设备编号,
           a1.预检日期 AS [2014预检日期],
           a2.预检日期 AS [2015预检日期]
      FROM (SELECT * FROM a WHERE DatePart(year,预检日期) = 2014) a1
 FULL JOIN (SELECT * FROM a WHERE DatePart(year,预检日期) = 2015) a2
        ON a1.设备编号 = a2.设备编号