Оператор ограничения в PartiQL - Получить последнюю строку
Как использовать лимит в PartiQL? Мне нужны последние 3 строки из таблицы Amazon QLDB, которая использует синтаксис PartiQL для запросов. Что-то вроде SELECT * FROM Accounts, где AddedBy = ' [email protected] ' LIMIT 3
4 ответа
LIMIT
в настоящее время не поддерживается Amazon QLDB. Вот более подробный ответ на ваш вопрос Пагинация в QLDB.
Limit
теперь поддерживается вExecuteStatement
команда. См. документацию AWS для отправки его как части запроса.
Вот объявление от 8 марта 2022 года.
Это та же проблема, с которой я столкнулся. Поэтому я пишу проект для расширения возможностей PartiQL. Пожалуйста, обратитесь сюда: https://github.com/passren/PyDynamoDB
LIMIT работает иначе, чем я думал. LIMIT означает, что вы хотите ограничить поиск указанным количеством строк. Таким образом, LIMIT=10 означает, что вы собираетесь запросить не более 10 строк.
И это происходит не в строке оператора, а в вызове метода. Например:
import boto3
stmt = "SELECT * FROM \"my-table\" WHERE my_key = \'some_key\'"
dynamodb = boto3.client('dynamodb', region_name='us-east-1')
resp = dynamodb.execute_statement(Statement=stmt, Limit=10)
print(resp['Items'])
Вот документация: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExecuteStatement.html#API_ExecuteStatement_RequestSyntax .