diff --git a/db_utils/db_utils.go b/db_utils/db_utils.go
index a8e6bdb5431ca3cb6cb828b8b4fd324f845f2a8d..5bef00400f8d56d53c259dfe3560860e3623a11c 100644
--- a/db_utils/db_utils.go
+++ b/db_utils/db_utils.go
@@ -134,6 +134,39 @@ func AbsoluteDateStringQuery(absolute string) (string, error) {
 	return "", errors.Error("invalid absolute date query")
 }
 
+func ParseAbsoluteQuery(absoluteQuery string, location *time.Location) (startDate, endDate time.Time, err error) {
+	nowValue := time.Now().UTC()
+	var value int64
+
+	switch {
+	case CheckAbsoluteRegex(Yesterday, absoluteQuery):
+		yesterday := nowValue.AddDate(0, 0, -1)
+		startDate = time.Date(yesterday.Year(), yesterday.Month(), yesterday.Day(), 0, 0, 0, 0, location)
+		endDate = time.Date(yesterday.Year(), yesterday.Month(), yesterday.Day(), 23, 59, 59, 999999999, location)
+	case CheckAbsoluteRegex(LastXHours, absoluteQuery):
+		value = PullAbsoluteValue(absoluteQuery)
+		since := nowValue.Add(time.Duration(-value) * time.Hour)
+		startDate = time.Date(since.Year(), since.Month(), since.Day(), since.Hour(), since.Minute(), since.Second(), since.Nanosecond(), location)
+		endDate = time.Date(nowValue.Year(), nowValue.Month(), nowValue.Day(), 23, 59, 59, 999999999, location)
+	case CheckAbsoluteRegex(LastDay, absoluteQuery):
+		startDate = time.Date(nowValue.Year(), nowValue.Month(), nowValue.Day(), 0, 0, 0, 0, location)
+		endDate = time.Date(nowValue.Year(), nowValue.Month(), nowValue.Day(), 23, 59, 59, 999999999, location)
+	case CheckAbsoluteRegex(LastXDays, absoluteQuery):
+		value = PullAbsoluteValue(absoluteQuery)
+		since := nowValue.AddDate(0, 0, -int(value)).Truncate(24 * time.Hour)
+		startDate = time.Date(since.Year(), since.Month(), since.Day(), since.Hour(), since.Minute(), since.Second(), since.Nanosecond(), location)
+		endDate = time.Date(nowValue.Year(), nowValue.Month(), nowValue.Day(), 23, 59, 59, 999999999, location)
+	case CheckAbsoluteRegex(LastMonth, absoluteQuery):
+		startDate = time.Date(nowValue.Year(), nowValue.Month(), 1, 0, 0, 0, 0, location)
+		lastDay := startDate.AddDate(0, 1, -1)
+		endDate = time.Date(lastDay.Year(), lastDay.Month(), lastDay.Day(), 23, 59, 59, 999999999, location)
+	default:
+		return startDate, endDate, errors.Error("invalid absolute date query")
+	}
+
+	return startDate, endDate, nil
+}
+
 type PageAndOrderParams struct {
 	PageParams
 	OrderBy string `json:"order_by,omitempty"`