ник: Артём
Буду благодарен за любую подсказку. Вообщем у меня есть таблица. Создаю ёё так:
{
"[Id] COUNTER PRIMARY KEY",
"[SNumber] Text (12)",
"[IP] Text (15)",
"[Date_Time] Date",
"[Temperature] DOUBLE",
"[Period] INTEGER"
};
При загрузке моей проги, у меня выполняется один из трёх выриантов запросов. Вот они:
1. Здесь мне нужно выбрать последние 100 записей с таким то серийным номером...
SELECT TOP 100 DataTable.SNumber, DataTable.IP, DataTable.Date_Time, DataTable.Temperature FROM DataTable WHERE (((DataTable.SNumber)='000002B5C588')) ORDER BY DataTable.Date_Time DESC;
2. В этом запросе мне нужно загрузить значения за последние 15 мин. Первым делом я узнаю время последней записи:
SELECT DISTINCT TOP 1 DataTable.Date_Time FROM DataTable WHERE (((DataTable.SNumber)='000002B5C588')) ORDER BY DataTable.Date_Time DESC;
После чего делаю такой запрос:
SELECT DataTable.SNumber, DataTable.IP, DataTable.Date_Time, DataTable.Temperature FROM DataTable WHERE (((DataTable.SNumber)='000002B5C588') AND ((DataTable.Date_Time) Between #10/04/2011 10:07# And #10/04/2011 10:22#)) ORDER BY DataTable.Date_Time DESC;
3. И в этом варианте я делаю запросы по промежутку даты и времени. Вообщем вот:
SELECT DataTable.SNumber, DataTable.IP, DataTable.Date_Time, DataTable.Temperature FROM DataTable WHERE (((DataTable.SNumber)='000002B5C588') AND ((DataTable.Date_Time) Between #03/10/2011 13:26# And #03/10/2011 13:26#)) ORDER BY DataTable.Date_Time DESC;
Все они работаю, но есть одно но! Это время выполнения. Я с Access не особо знаком и буду рад любой информации для ускорения моих запросиков, начиная от каких полей нужно проиндексировать ну и вообще по поводу запросов...