public void GetFirstAndLastEpoch() { using (var db = new OrmLiteConnectionFactory(GetSQLiteConnectionString(), SqliteDialect.Provider).OpenDbConnection()) { using (var cmd = db.CreateCommand()) { cmd.CommandText = "SELECT dataTimestamp FROM data ORDER BY dataTimestamp limit 1"; using (var rdr = cmd.ExecuteReader()) { while (rdr.Read()) { long firstEpoch = (long) rdr[0]; FirstEpoch = new DateTime(firstEpoch); } } cmd.CommandText = string.Format("SELECT dataTimestamp FROM data WHERE dataTimeStamp > {0} ORDER BY dataTimestamp limit 1", FirstEpoch.Ticks); using (var rdr = cmd.ExecuteReader()) { while (rdr.Read()) { var secondEpoch = new DateTime((long)rdr[0]); EpochLengthInSeconds = (int) secondEpoch.Subtract(FirstEpoch).TotalSeconds; } } cmd.CommandText = "SELECT dataTimestamp FROM data ORDER BY dataTimestamp DESC limit 1"; using (var rdr = cmd.ExecuteReader()) { while (rdr.Read()) { long lastEpoch = (long) rdr[0]; LastEpoch = new DateTime(lastEpoch); } } EpochCount = db.Scalar<long>(db.From<AgdTableTimestampAxis1>().Select(Sql.Count("*"))); } } }