В какой базе данных был изобретен «ограниченный» синтаксис SQL-запроса - PullRequest
6 голосов
/ 12 июня 2010

MySQL имеет приятную особенность (хотя и нестандартную), которая позволяет запрашивать ограничение набора результатов со смещением

SELECT * FROM TABLE LIMIT M, N;

Это создано MySQL? или Postgres?

Ответы [ 5 ]

10 голосов
/ 12 июня 2010

Согласно Википедии, Расмус Лердорф (первоначальный создатель PHP) впервые использовал синтаксис "LIMIT x" в базе данных mSQL:

Он внес свой вклад в ApacheHTTP Server и он также придумал предложение LIMIT и добавил его в базу данных mSQL в 1995 году. Это начало предложений LIMIT, найденных в MySQL и PostgreSQL.

Ограничение набора результатов теперь также стандартизировано, но с более подробным синтаксисом:

SELECT *
FROM T
FETCH FIRST 10 ROWS ONLY
5 голосов
/ 12 июня 2010

Postgres добавил синтаксис LIMIT в версии 6.5 , выпущенный 9 июня 1999 .

На основании документации MySQL имел синтаксис LIMIT, начиная с версии 3.23 ( производственная версия, январь 2001 г. ). Но документы в URL предназначены для версии 4.1, которая не была выпущена до 2004 года.

У SQL Server не было TOP до SQL Server 2000, поставка в конце 2000 .

Oracle имеет ROWNUM с момента выпуска Oracle 6 , выпущенного в 1988 . Еще страшнее то, что он может работать лучше в случаях, чем ROW_NUMBER!

3 голосов
/ 13 июня 2010

MySQL скопировал его из mSQL, который, как утверждает Расмус Лердорф, реализует: http://itc.conversationsnetwork.org/shows/detail3298.html

Это не значит, что mSQL был первым, но он выглядит как самый ранний из упомянутых до сих пор.

3 голосов
/ 13 июня 2010

Между PostgreSQL и MySQL PostgreSQL скопировал синтаксис LIMIT из MySQL (в v6.5) и добавил синтаксис OFFSET (возможно, он тоже был скопирован, но я думаю, что mysql имел только запятый-синтаксис тогда ). Затем (7.2) было изменено на только разрешение "LIMIT foo OFFSET bar", потому что синтаксис MySQL был неясен.

0 голосов
/ 12 июня 2010

Я знаю, что Rdb (изначально продукт корпорации DEC, теперь доступный от Oracle) имел LIMIT TO n ROWS еще в 1991 году.

Делись и наслаждайся.

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