QuestDB provides comprehensive date and time functions with microsecond and nanosecond precision support.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/questdb/questdb/llms.txt
Use this file to discover all available pages before exploring further.
Current Time Functions
now
Returns the current timestamp. Evaluated once per query execution. Signature:now()
Returns: TIMESTAMP
Example:
systimestamp
Alias fornow(). Returns current timestamp with microsecond precision.
Signature: systimestamp()
Returns: TIMESTAMP
sysdate
Returns current date (timestamp truncated to day). Signature:sysdate()
Returns: TIMESTAMP
Example:
today
Returns current date at midnight. Signature:today()
Returns: TIMESTAMP
yesterday
Returns yesterday’s date at midnight. Signature:yesterday()
Returns: TIMESTAMP
tomorrow
Returns tomorrow’s date at midnight. Signature:tomorrow()
Returns: TIMESTAMP
Date Part Extraction
year
Extracts the year from a timestamp. Signature:year(N)
Parameters:
N- TIMESTAMP
INT
Example:
month
Extracts the month (1-12) from a timestamp. Signature:month(N)
Parameters:
N- TIMESTAMP
INT
Example:
day
Extracts the day of month (1-31) from a timestamp. Signature:day(N)
Parameters:
N- TIMESTAMP
INT
hour
Extracts the hour (0-23) from a timestamp. Signature:hour(N)
Parameters:
N- TIMESTAMP
INT
minute
Extracts the minute (0-59) from a timestamp. Signature:minute(N)
Parameters:
N- TIMESTAMP
INT
second
Extracts the second (0-59) from a timestamp. Signature:second(N)
Parameters:
N- TIMESTAMP
INT
millis
Extracts milliseconds (0-999) from a timestamp. Signature:millis(N)
Parameters:
N- TIMESTAMP
INT
micros
Extracts microseconds (0-999) from a timestamp. Signature:micros(N)
Parameters:
N- TIMESTAMP
INT
day_of_week
Returns day of week (1=Monday, 7=Sunday). Signature:day_of_week(N)
Parameters:
N- TIMESTAMP
INT
Example:
week_of_year
Returns ISO week number (1-53). Signature:week_of_year(N)
Parameters:
N- TIMESTAMP
INT
is_leap_year
Checks if year is a leap year. Signature:is_leap_year(N)
Parameters:
N- TIMESTAMP
BOOLEAN
Example:
Date Truncation
date_trunc
Truncates timestamp to specified unit. Signature:date_trunc(sN)
Parameters:
s- Unit:'nanosecond','microsecond','millisecond','second','minute','hour','day','week','month','quarter','year','decade','century','millennium'N- TIMESTAMP
TIMESTAMP
Example:
timestamp_floor
Floors timestamp to interval boundary. Signature:timestamp_floor(sN)
Parameters:
s- Interval (e.g.,'1h','5m','1d')N- TIMESTAMP
TIMESTAMP
Example:
timestamp_ceil
Ceils timestamp to interval boundary. Signature:timestamp_ceil(sN)
Parameters:
s- IntervalN- TIMESTAMP
TIMESTAMP
Date Arithmetic
dateadd
Adds interval to timestamp. Signature:dateadd(sIN) or timestamp_add(sIN)
Parameters:
s- Unit:'y','M','w','d','h','m','s','ms','us'I- Amount to addN- TIMESTAMP
TIMESTAMP
Example:
datediff
Calculates difference between timestamps. Signature:datediff(sNN)
Parameters:
s- Unit:'y','M','w','d','h','m','s','ms','us'- First
N- Start TIMESTAMP - Second
N- End TIMESTAMP
LONG
Example:
Type Conversion
to_timestamp
Converts string or long to timestamp. Signature:to_timestamp(S) or to_timestamp(L)
Parameters:
S- STRING in ISO formatL- LONG microseconds since epoch
TIMESTAMP
Example:
to_str
Formats timestamp as string. Signature:to_str(Ns)
Parameters:
N- TIMESTAMPs- Format pattern (Java DateTimeFormatter)
STRING
Example:
Time Series Generation
generate_series
Generates series of timestamps. Signature:generate_series(NNs)
Parameters:
- First
N- Start timestamp - Second
N- End timestamp s- Step interval
x column
Example:
Intervals
QuestDB supports interval literals:Performance Notes
- Date extraction functions are highly optimized and vectorized
date_trunc()supports all precision levels without performance penaltynow()is evaluated once per query, not per row- Use native timestamp types instead of string parsing when possible