Получение последнего вставленного объекта из временных рядов riak
Процедура получения последней записи от Riak TS
основанный на отметке времени.
Я создал следующую таблицу:
CREATE TABLE devicedetail (memberId SINT64 NOT NULL, type VARCHAR NOT NULL,model VARCHAR NOT NULL,imei VARCHAR NOT NULL,deviceId VARCHAR NOT NULL,manufacturer VARCHAR NOT NULL,os VARCHAR NOT NULL,version VARCHAR NOT NULL,time TIMESTAMP NOT NULL,PRIMARY KEY ((memberId),memberId));
Вставьте данные с помощью SQL:
INSERT INTO devicedetail VALUES (110,'health Kit','andorid-4.0','76565657675222','sdgsd1212','sony','windows','5.0',1420113600000);
и теперь я хочу выбрать deviceId
на основании последней вставленной записи:
select deviceId from devicedetail where memberId=110 and type='health Kit' order by time desc limit 1;
Я получаю исключение, как:
Ошибка синтаксического анализатора SQL {<< "order" >>,riak_ql_parser, ["синтаксическая ошибка перед: ","identifier"]}
но во время запроса:
select deviceId from devicedetail where memberId=110 and type='health Kit';
Получение вывода как:
+---------+
|deviceId |
+---------+
|sdgsd1212|
+---------+
Кто-нибудь знает, как мы получаем это простым способом? Пожалуйста, скажите мне.
1 ответ
Ответ от 21 декабря 2016 года:
Riak TS 1.5 был выпущен на этой неделе. ORDER BY и LIMIT теперь поддерживаются.
Старый ответ:
ORDER BY не поддерживается в текущей версии Riak TS (1.4), поэтому вы получаете сообщение об ошибке. LIMIT также еще не поддерживается. ORDER BY и LIMIT будут включены в ближайшее время.