我有以下查询返回汽车注册号以及查看日期和位置:
SELECT PLATE_READ.RegNumber, PLATE_READ.DateSeen, ANPR_CAMERA.Name FROM PLATE_READ
REG DATESEEN LOCATION
=== ======== ========
5897HHS 20/12/2013 12:10:57 GIB EXIT
5897HHS 20/12/2013 12:05:03 AIRPORT BARRIER
我希望能够查询并且每个注册号返回1行,而不是有三行,而是按照以下格式说明每个位置的日期:
REG GIB EXIT AIRPORT BARRIER
=== ============= ==============
5897HHS 20/12/2013 12:10:57 20/12/2013 12:05:03
这是我到目前为止所做的:
SELECT *
FROM
(SELECT TOP(100) PLATE_READ.DateSeen,
PLATE_READ.RegNumber,
ANPR_CAMERA_GROUP.Name
FROM ANPR_CAMERA
INNER JOIN ANPR_CAMERA_GROUP
ON ANPR_CAMERA.Id = ANPR_CAMERA_GROUP.Id
INNER JOIN ANPR_CAMERA_IN_GROUP
ON ANPR_CAMERA.Id = ANPR_CAMERA_IN_GROUP.ANPRCameraId
AND ANPR_CAMERA_GROUP.Id = ANPR_CAMERA_IN_GROUP.ANPRCameraGroupId
INNER JOIN PLATE_READ
ON ANPR_CAMERA.Id = PLATE_READ.CameraId
ORDER BY PLATE_READ.DateSeen DESC
) x pivot ( MAX(DateSeen) FOR Name IN ([GIB EXIT], [AIRPORT BARRIER]) )p
然而,这总是为' GIB EXIT'返回一个NULL值。条目
答案 0 :(得分:0)
尝试构建脚本来测试您的示例(如果您提供了这些脚本会很有帮助),答案显而易见。
您在第一个SQL中选择 ANPR_CAMERA .Name,在您的数据透视SQL中选择 ANPR_CAMERA_GROUP .Name。