Jeegen Ответов: 2

Используйте запрос фильтра для диапазона, но без имени столбца или первичного ключа


привет,
Я хочу отфильтровать запись от Record_1 до Record_100 или любого другого диапазона, который мы хотим, но без первичного ключа или без использования какого-либо имени столбца.
Я использую odata C#.
Возможно ли это и как?

Спасибо

Что я уже пробовал:

Я пробовал, но с первичным ключом, и я хочу без первичного ключа.
каков способ фильтрации диапазона без первичного ключа?
или это возможно?

2 Ответов

Рейтинг:
2

OriginalGriff

Цитата:
Я хочу отфильтровать запись ... без первичного ключа или без использования какого-либо имени столбца.


Вы ведь понимаете, что эта просьба-просто чепуха, не так ли?
У вас есть набор значений в таблице, которые вы должны отфильтровать: в вашем случае "Record_1" - "Record_100", что означает, что вы должны отбросить все строки, содержащие данные, не входящие в это изменение.
Но все данные в таблице хранятся в Столбцах (независимо от любого первичного ключа или любого другого индексирования, которое вы могли применить).
Таким образом, вы не можете логически выполнять фильтрацию, пока не получите доступ к данным на основе столбцов, что означает присвоение имен столбцам, содержащим данные, которые различают строки.

То, что вы просите, - это "я хочу получить список всех красных автомобилей на парковке, но вы должны сделать это с завязанными глазами".

Я думаю, что вам нужно вернуться к своему намерению и несколько переосмыслить его - в данный момент эта просьба не имеет никакого смысла.

И пока вы этим занимаетесь ... Если "Record_n" - это набор значений в вашей БД, то ваш дизайн несовершенен и создаст вам трудности. Когда числа хранятся как часть строк, все сравнения основаны на строках: это означает, что первая различная пара символов определяет результат всего сравнения. Таким образом, порядок строковых чисел не равен 1, 2, 3 ... это ... 1, 10, 100, 101, ...109, 11, 110, ...
Не храните числа как часть строк, Если вы когда-нибудь захотите получить к ним доступ и использовать их в качестве числовых значений: это Пита.


[no name]

Окей
Но если я хочу отфильтровать запись из определенного диапазона, то это только один из способов использовать первичный ключ или любое другое имя столбца.

phil.o

Фильтрация означает предоставление критериев ; вы не можете предоставить какой-либо критерий, не имея отношения к фактическому столбцу или группе столбцов.

Рейтинг:
1

Maciej Los

Если я правильно вас понял, вы говорите о разбиении данных на страницы... Проверить это: Пейджинг с помощью ASP.NET веб-API OData – блог Юсефа М.[^]