C# mysql с разбиением на страницы (предел) с сортировкой. после добавления новой записи. запись не будет находиться на последней странице
Я использую C#.
получить образец записи
выберите * из таблицы nameName по полю A, FieldB, FieldC предел 0, 10
после того как я добавил новую запись. по праву его можно найти на последней странице моего результата. но из-за сортировки. это может быть не на последней странице.
мой вопрос как я узнаю, что эта запись (у меня есть lastCreateID) на самом деле находится на какой странице? так что я могу перераспределить мой предел нумерации страниц на конкретной странице?
С уважением, MH
1 ответ
Что вам, вероятно, придется сделать, чтобы узнать, на какой странице он находится, сделать что-то вроде
select *,@row:=@row+1 as row
from tableName,(select @row:=0)R order by fieldA, FieldB , FieldC
вышеприведенное только для того, чтобы показать, что мы можем присвоить ему номер строки, используя тот же порядок, что и ваш предельный запрос нумерации страниц (порядок по fieldA,FieldB,FieldC). то, что вам нужно сделать, это выбрать как
select row from
(select *,@row:=@row+1 as row
from tableName,(select @row:=0)R order by fieldA, FieldB , FieldC)T1
where yourIDcolumnName = lastCreatedId
чтобы получить номер строки последнего созданного номера строки, и теперь, когда вы знаете, в какой строке он находится, вы можете выяснить, на какой странице он находится.