2012-05-24 3 views
-5

Я просто нужен запрос SQL-сервера для следующего сценария:Выбор одна запись для каждого типа

enter image description here

нужен запрос, чтобы получить одну запись каждого типа транспортного средства.

У меня есть стол автомобиля.

Легковой автомобиль, пикап, MPV тип транспортного средства.

Есть 4 записи о пассажирском вагоне, 2 записи о пикапе и запись многоцелевого транспортного средства (MPV).

поэтому я хочу получить запрос для получения единственной записи каждого типа.

Благодаря

Мой вывод: желание

ID Model    VehicleType   Owner 
1 LTD Crown Victoria Passanger    XXXXXXXXXX 
2 Tacoma    Pickup    YYYYYY 
3 Explorer   Multipurpose Vehicle 

Этот вид продукции, что я хочу.

+1

Ваш вопрос является неполным ... и, кстати, вы должны показать нам, что вы пытались ... – Marco

+0

вопрос является слишком расплывчатым и не хватает контекста и деталей. – lucuma

+0

Вопрос: для «легкового автомобиля», почему вы выбираете «LTD Crown Victoria», а не Accord или Sentra или Seville? – Marco

ответ

1

Попробуйте

SELECT DISTINCT [Vehicle Type] FROM your_table 

Я вижу изменения. Этот запрос дает вам именно то, что вы спрашиваете:

WITH t1 AS 
(
    SELECT 
    ID, Model, [Vehicle Type], Owner, 
    RANK() OVER(PARTITION BY [Vehicle Type] order by ID) AS t2 
    FROM your_table 
) 
SELECT ID, Model, [Vehicle Type], Owner 
FROM t1 
WHERE t2 = 1 

Проверить это here

+0

Привет, Марко, все в порядке. но вы знаете, нет. полей больше. Это время не работает. Я хочу полные поля (столбцы). – Kamlesh

+0

@ Kamlesh: отредактируйте свой вопрос, показывая нам желаемый результат, потому что я не могу понять, что вам нужно, извините. – Marco

+0

@ Kamlesh: попробуйте мой отредактированный ответ – Marco

Смежные вопросы