У меня есть оператор select и для одного из возвращаемых значений я использую вычисление.SQL Выберите вычисление в разделе where
Что я хотел бы сделать, так это использовать результат вычисления в предложении where. Что-то вроде этого:
SELECT
ROW_NUMBER()OVER(PARTITION BY val1 ORDER BY val2) AS rnum,
val3,
FROM TestDb
Where (rnum = 1)
Но это не нравится rnum
быть в where
.
Я думал о создании таблицы и добавлении к ней. Тогда я смогу select where rnum ...
, но это не кажется очень изящным. Есть ли способ лучше?
SELECT * FROM (ваш запрос здесь) WHERE rnum = 1 или использование CTE являются наиболее часто используемыми решениями – Mihai
Можете ли вы отправить схему, а также желаемый результат, который вы ищете? –
Спасибо Mihai - отлично сработал :-) – MartinHayes