Каковы альтернативы для предложения ORDER BY в представлении?

Этот вопрос должен был быть только на этом сайте:)

ORDER BY запрещается использовать в представлении, как я понял из-за возможности для нескольких порядков при использовании этого представления.

Я знаю, что есть способы обойти это ограничение, например TOP 99.999999 PERCENT, но я хотел бы знать, что является лучшей практикой , а не как взломать его.

Итак, если я хочу создавать представления в своей базе данных для личного использования, то есть я хочу подключиться к базе данных и просто увидеть данные, зафиксированные и отсортированные, как это сделать, если я не могу заказать представление?

В настоящее время в моей базе данных SQL Server у меня есть представления с помощью кода TOP, и я использую их много, но он чувствует неправильно.

12 голосов | спросил yellowblood 21 J000000Thursday11 2011, 14:04:15

3 ответа


2

Нет такого понятия, как «упорядоченное» представление, поскольку представление должно представлять собой набор строк. Используйте хранимую процедуру, если требуется фиксированный порядок.

ответил sqlvogel 24 J000000Sunday11 2011, 21:07:45
9

Только внешний ORDER BY гарантирует заказ

  • Любое промежуточное или внутреннее ORDER BY игнорируется.
    Это включает ORDER BY в представлении
  • В любой таблице не подразумевается порядок
  • Нет никакого подразумеваемого порядка из любого индекса (кластерного или нет) в этой таблице

Ссылки

  

ORDER BY гарантирует отсортированный результат только для самой внешней инструкции SELECT запроса. Например, рассмотрим следующее определение вида: (и пример следует, что соответствует этому вопросу)

ответил gbn 21 J000000Thursday11 2011, 16:41:45
3

Добавьте ORDER BY на выход вида i.e.

  SELECT whatever FROM MYVIEW ORDER BY whatever
ответил SqlACID 21 J000000Thursday11 2011, 14:47:12

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132