Вопрос по sql-server, database, sql – Что такое T-SQL-эквивалент синтаксиса MySQL LIMIT x, y? [Дубликат]

15

Possible Duplicate:
How to write a (MySQL) “LIMIT” in SQL Server?

Как я могу изменить свой запрос с помощью LIMIT Inside для SQL-сервера?

Код:

SELECT apretiz FROM tableApoint WHERE price = '$newprice' LIMIT 5;

Многие вещи не работают, поэтому просто просят помощи

И как я могу изменить LIMIT 5,10 на примере? Могу ли я использовать TOP для этого?

Отредактировано для ограничения 5,10 pretyBoy
Ни один из ответов ниже не показывает синтаксис дляSELECT *так вот оно:SELECT TOP(5) * FROM [TableName] K48

Ваш Ответ

4   ответа
16

вы должны использовать TOP! (LIMIT используется для MYSQL)

Так что попробуй убратьLIMIT 5 и делатьSELECT TOP(5) apretiz.

Кроме того, попробуйте добавить порядок (по той же причине, что и раньше).

Пожалуйста, сделайте поиск, прежде чем спрашивать вещи.Ссылка на старый вопрос

20

...
ORDER BY thisColumn, thatColumn
OFFSET 5 ROWS FETCH NEXT 5 ROWS ONLY
3

TOP ключевое слово:

 SELECT TOP 5 pretiz 
 FROM tableApoint WHERE price = '$newprice'

Использование LIMIT 5, 10 не является частью стандарта SQL и доступно только в MySQL.

Вы могли бы использоватьROW_NUMBER() для SQL как временное решение, и вы получите тот же желаемый результат.

SELECT * FROM ( 
  SELECT *, ROW_NUMBER() OVER (ORDER BY name) as row FROM tableApoint 
) a WHERE row >= 5 and row <= 10
2

SQL Server 2005 and above

ROW_NUMBER Функция, чтобы назначить уникальные номера для ваших строк, а затем выбрать диапазон значений из выходных данных.

Script:

CREATE TABLE table1
(
    textvalue VARCHAR(10) NOT NULL
);

INSERT INTO table1 (textvalue) VALUES
   ('i'),
   ('a'),
   ('e'),
   ('h'),
   ('c'),
   ('l'),
   ('g'),
   ('m'),
   ('d'),
   ('k'),
   ('j'),
   ('f'),
   ('b'),
   ('n');

;WITH letters as
(
    SELECT  textvalue
        ,   ROW_NUMBER() OVER(ORDER BY textvalue) rownum 
    FROM    table1
)
SELECT  textvalue
FROM    letters
WHERE   rownum  BETWEEN 6 AND 10;

Output:

TEXTVALUE
---------
    f
    g
    h
    i
    j

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