Столкнувшись с проблемой в пункт - PullRequest
1 голос
/ 27 февраля 2020
select *
from db_user
order by date_created asc OFFSET 1 ROWS FETCH NEXT 10 ROWS ONLY
having full_name like 'Admin%';

Ошибка при получении:

[S0001] [156] Неверный синтаксис рядом с ключевым словом «Имея».

Как решить эту проблему, потому что «где пункт также дает ошибку.

Ответы [ 2 ]

3 голосов
/ 27 февраля 2020

having используется для фильтрации сгруппированных результатов из предложения group by. Если вы просто хотите отфильтровать строки, вы должны использовать предложение where. Обратите внимание, что он должен прийти перед предложением order by:

SELECT   *
FROM     db_user
WHERE    full_name LIKE'Admin%' -- Here!
ORDER BY date_created ASC OFFSET 1 ROWS FETCH NEXT 10 ROWS ONLY
1 голос
/ 27 февраля 2020

HAVING используется в запросах с оператором groupby для фильтрации результатов на основе значений агрегированных столбцов . Вы должны использовать WHERE .

Правильный запрос гласит:

select *
from db_user
where full_name like 'Admin%'
order by date_created asc OFFSET 1 ROWS FETCH NEXT 10 ROWS ONLY
;
...