Можете ли вы назвать одну популярную базу данных, которая не поддерживает оператор LIMIT? - PullRequest
3 голосов
/ 14 мая 2010

Drupal использует db_query_range() по той причине, что не все базы данных поддерживают LIMIT,

можете назвать несколько?

Ответы [ 5 ]

6 голосов
/ 14 мая 2010

DB2, MSSQL, Oracle и Informix не поддерживают LIMIT. На самом деле, это не в стандарте SQL. (Стандартный "FETCH FIRST" действительно)

Вот хороший источник для сравнения SQL: http://troels.arvin.dk/db/rdbms/#select-limit

3 голосов
/ 14 мая 2010

Microsoft SQL Server не поддерживает LIMIT. Он поддерживает оператор TOP, который можно использовать для выполнения похожих задач. Основное ограничение с TOP - невозможность указать смещение.

2 голосов
/ 14 мая 2010

DB2, Oracle и MS SQL Server не поддерживают предложение LIMIT.

Google для <database name> LIMIT, и вы узнаете эквивалентное поддерживаемое предложение для этой базы данных или информацию о том, поддерживается ли LIMIT.

2 голосов
/ 14 мая 2010

ms sql, оракул.

и фактически LIMIT не существует в ANSI SQL '92, которому должны следовать все современные базы данных. так что в настоящее время это просто ненужное расширение / синтаксический сахар / специфический sql диалект

0 голосов
/ 14 мая 2010

С другой стороны, ANSI-92 SQL предоставляет оконную функцию ROW_NUMBER() для достижения этой цели, которая поддерживается во многих базах данных. См. SELECT (SQL) в Википедии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...