У меня есть SQL-запрос, который я пытаюсь написать, и теперь немного застрял в том, как написать заказ по предложению.
В основном в таблице, из которой я выбираю, есть элементы со значением серьезности.Я хочу выбрать эти элементы и упорядочить их так, чтобы столбцу Серьезность был присвоен уровень серьезности 1-4, а затем 0, а для каждой даты журнала по убыванию.
Уровень серьезности 1 - самый высокий, 4 - самый низкий, и 0 представляет не назначенную серьезность, мне нужно отобразить эти элементы. Наивысшая серьезность, сначала самый старый элемент, самая низкая серьезность, последний новейший элемент.
Мой запрос пока:
SELECT
[TicketID],
[type],
[Product],
[Description],
[LoggedBy],
[LogDate],
[Department],
[AssignedTo],
[Severity],
[Status],
[LastUpdatedBy],
[LastUpdatedDate]
FROM
SupportTicketsTbl
WHERE
TicketID NOT IN
(
SELECT
tck.ticketID
FROM
SupportTicketsTbl tck
JOIN
tblTicketsInEvents tie
ON
tck.TicketID = tie.ticketID
JOIN
tblSupportEvent ev
ON
tie.eventID = ev.id
where
ev.type = 1
)
AND
Status <> 'Complete'
Я полагаю, что самый простой способ - создать переменную таблицы и выбрать все элементы, отличные от 0, в нужном мне порядке, затем выбрать все 0 элементов в моей переменной таблицы инаконец, просто выберите все обратно из табличной переменной, но это кажется немного грязным, поэтому мне интересно, есть ли более элегантное решение?
Спасибо