Я думаю, что это простой пример для тех, кто имеет опыт работы с SQLite, но для меня это довольно непрозрачно.Запрос последней записи заданного значения из простой базы данных SQLite с помощью ADO.NET (Xamarin, C#)
У меня есть база данных «MYDB» с колоннами, как это:
Name Date Val1 Val 2 Val3
Greg time1 blah blah blah
Stev time2 blah blah blah
Мой Android приложение позволяет пользователям выбирать свое имя из профиля, и когда они делают изменения стоимости на основе приложения, он добавляет столбец. Обновление может выглядеть следующим образом:
Name Date Val1 Val 2 Val3
Greg time1 blah blah blah
Stev time2 blah blah blah
Stev time3 blah1 blah1 blah1
Stev time4 blah2 blah2 blah2
Greg time5 blah1 blah1 blah1
В части моего кода, я хочу, чтобы загрузить значение последней записи для данного имени. В моем примере выше, я бы хотел, чтобы Грег вовремя5, или если я выбрал Стева, я хочу Stev и time4.
я могу сортировать это сделать с помощью следующей команды, где «Name» является строкой и имя пользователи выбрали для загрузки из базы данных:
contents.CommandText = "SELECT * FROM mydb WHERE [Name] = @Name AND [Date] = (Select MAX([Date]) from mydb)";
contents.Parameters.AddWithValue("@Name", Name);
Конечно, это только позволяет мне выбрать последний набор значений. Я не могу получить последние данные Stev в качестве примера, потому что вышеприведенный код позволяет мне выбирать самые последние.
Я собирался получить последнюю запись пользователя, чье имя я ввел. Может ли кто-нибудь с опытом ADO.NET помочь мне создать соответствующую команду?
Я думаю, что вы хотите добавить ORDER BY DATE DESC LIMIT 1 так «SELECT * FROM mydb WHERE [Name] = @Name ORDER BY DATE DESC LIMIT 1"; –
Роб на помощь! Это работало безупречно. Спасибо за ваш вклад. Я новичок в SQL и еще не нашел краткую ссылку в Интернете, поэтому это всего лишь запаникованный поиск в Google, и в этом случае я точно не знал, что искал. –