To pytanie musiało być na tej stronie :)
ORDER BY jest zabronione w widoku, jak zrozumiałem, ze względu na możliwość wielokrotnego zamówienia przez podczas korzystania z tego widoku.
Wiem, że istnieją na przykład sposoby obejścia tego ograniczenia, TOP 99.999999 PERCENT
ale chciałbym wiedzieć, jaka jest najlepsza praktyka, a nie jak ją zhakować.
Tak więc, jeśli chcę tworzyć widoki w mojej bazie danych do użytku osobistego, co oznacza, że chcę połączyć się z bazą danych i po prostu zobaczyć dane naprawione i posortowane, jak mam to zrobić, jeśli nie mogę zamówić widoku?
Obecnie w mojej SQL Server DB mam widoki z TOP
włamaniem i używam ich bardzo często, ale wydaje się to złe.
sql-server
view
order-by
żółta krew
źródło
źródło
Odpowiedzi:
Nie ma czegoś takiego jak „uporządkowany” widok, ponieważ widok powinien być zbiorem wierszy. Użyj procedury składowanej, jeśli chcesz mieć stałe zamówienie.
źródło
TOP
zORDER BY
definiujesz nowy zestaw, ponieważ kolejność wpływa na to, które wiersze są „górne”; dlategoTOP
umożliwia korzystanieORDER BY
z definicji widoku.Tylko najbardziej zewnętrzny ORDER BY gwarantuje zamówienie
Obejmuje to ORDER BY w widoku
Spinki do mankietów
źródło
Dodaj ORDER BY do wyjścia widoku tj
źródło