Является ли порядок запросов к области согласованным? - PullRequest
0 голосов
/ 19 февраля 2020

При запросе к базе данных в db без явного упорядочения могу ли я полагаться на заданный порядок в результатах? Это порядок вставки? Основной ключ? Последнее обновление? Пример ниже:

var results = Realm.All<MyRecord>().Where(i => i.MyProp == "in the wild wild west");
foreach (var result in results)
{
  // do a thing with the record
}

Мне нужен непротиворечивый порядок, но я бы не стал добавлять накладные расходы, будучи "явным" с порядком, так как это добавит накладные расходы на поиск, если область согласована в своих результатах (при условии без изменений на БД) Я рад работать с порядком по умолчанию, данным царством.

1 Ответ

0 голосов
/ 20 февраля 2020

Я бы ни за что не полагался на «естественный порядок» Царства. Что еще более важно, если данные когда-либо вставляются или изменяются, этот порядок выводится за пределы окна.

Таким образом, две вещи

Свойства списка гарантированно сохраняют свой порядок вставки.

так что вы можете рассчитывать на это. Часть проблемы также связана с чтением данных обратно без упорядоченного набора:

По соображениям производительности порядок вставки результатов не гарантируется.

Значение что, когда вы читаете в результатах, нет гарантированного порядка, если вы не определите его.

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