Elementy ORDER BY muszą pojawić się na liście wyboru, jeśli określono WYBÓR ODLEGŁOŚCI

Mam kwerendę sql, w której chcę wiersze powrotu z odrębnym porządkiem wartości według konkretnej kolumny. jak powiedzmy, chcę disntict batchno z porządku porządkowego przez locationid.

Próbowałem również google, ale nie jestem w stanie znaleźć rozwiązania

ORDER BY items must appear in the select list if SELECT DISTINCT is specified.

to, co mam za każdym razem, gdy próbowałem.

gdy nie używa się odrębnego, otrzymałem dane wyjściowe, ale z duplikatami wierszy za pomocą tego zapytania

Select Batchno,LocationId from Ordertbl order by case when[LocationId] =3 THEN 0 ELSE 1 END, [LocationId]

jeśli używam odmiennego, to daje mi błąd, który wypróbowałem.

Select distinct CAST(Batchno as Varchar(MAX)),LocationId from Ordertbl order by case when[LocationId] =3 THEN 0 ELSE 1 END,[LocationId]

lub

Select distinct CAST(Batchno as Varchar(MAX)),LocationId from Ordertbl order by case when[LocationId] =3 THEN 0 ELSE 1 END,[LocationId],[Batchno]

więc to jest to, co próbowałem, ale nie ma szczęścia. Proszę mi pomóc.

questionAnswers(1)

yourAnswerToTheQuestion