Применение критериев из одного столбца данных SELECT DISTINCT для сопоставления со вторым столбцом данных примеров - PullRequest
0 голосов
/ 06 декабря 2018

Я работаю с набором данных автомобиля, все в той же таблице, который использует следующий запрос:

SELECT 
    a.VIN_NUM AS [Registration VIN]
    ,DISTINCT STUFF(SUBSTRING(a.VIN_NUM, 1, 10),9,1,'_') AS [VIN STRING] 
FROM
    dbo.DMV_All_Tests AS a
WHERE
    KeyDateTime between '2017/12/01' and '2018/11/30' AND
    INSP_TEST_TYPE = 'B' AND
    INSP_ATTEMPT_NUM = '1' AND
    EPA_VEHICLE_TYPE = 'HDV' 
ORDER BY
    [VIN STRING] DESC

Запрос извлекает из таблицы VIN автомобиля (VIN_NUM) и его первичный кодидентификация, VIN STRING.Так, например, 1ABCD23EF4G567890 становится 1ABCD23_F.DISTINCT состоит в том, чтобы идентифицировать каждую уникальную комбинацию VIN STRING в наборе данных таблицы, рассчитанном на год (всего около 30 тыс. Членов).

Моя цель - получить пример VIN NUM для соответствия каждой отдельной VIN STRING.Каждая строка в запрашиваемом результате будет иметь два столбца / члена - VIN STRING (1ABCD23_F), а следующий столбец в строке будет содержать пример VIN_NUM из таблицы для VIN STRING (1ABCD23EF4G567890).

Я думаю, что это будет SELECT TOP ONE, чтобы просто получить первый экземпляр VIN NUM, но я не уверен, как он будет структурирован для предоставления соответствующего VIN NUM критерия, сопровождающего каждыйVIN STRING.Будет ли это вовлекать ВНУТРЕННЕЕ СОЕДИНЕНИЕ?

Любые предложения будут с благодарностью!

1 Ответ

0 голосов
/ 06 декабря 2018
SELECT 
      Max(a.VIN_NUM) AS [Registration VIN]
    , STUFF(SUBSTRING(a.VIN_NUM, 1, 10),9,1,'_') AS [VIN STRING] 
FROM
     dbo.DMV_All_Tests AS a
WHERE
    KeyDateTime between '2017/12/01' and '2018/11/30' AND
    INSP_TEST_TYPE = 'B' AND
    INSP_ATTEMPT_NUM = '1' AND
    EPA_VEHICLE_TYPE = 'HDV' 
GROUP BY
    STUFF(SUBSTRING(a.VIN_NUM, 1, 10),9,1,'_')
ORDER BY
    [VIN STRING] DESC
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...