if(TextUtils.isEmpty(mOffset)&&TextUtils.isEmpty(mLimit)){// If mOffset or mLimit is specified, we can't use the strategy in this block to speed up finding.
if(TextUtils.isEmpty(mOrderBy)){
// If mOrderBy is null, we can use id desc order, then the first record will be the record value where want to find.
mOrderBy="id desc";
}else{
// If mOrderBy is not null, check if it ends with desc.
if(mOrderBy.endsWith(" desc")){
// If mOrderBy ends with desc, then the last record of desc order will be the first record of asc order, so we remove the desc.
mOrderBy=mOrderBy.replace(" desc","");
}else{
// If mOrderBy not ends with desc, then the last record of asc order will be the first record of desc order, so we add the desc.