spec_result_roundtrip
Specification
The column types of the returned data frame depend on the data returned:
integer (or coercible to an integer) for integer values between -2^31 and 2^31 - 1, with NA for SQL
NULL
valuesnumeric for numbers with a fractional component, with NA for SQL
NULL
valueslogical for Boolean values (some backends may return an integer); with NA for SQL
NULL
valuescharacter for text, with NA for SQL
NULL
valueslists of raw for blobs with NULL entries for SQL NULL values
coercible using
as.Date()
for dates, with NA for SQLNULL
values (also applies to the return value of the SQL functioncurrent_date
)coercible using
hms::as_hms()
for times, with NA for SQLNULL
values (also applies to the return value of the SQL functioncurrent_time
)coercible using
as.POSIXct()
for timestamps, with NA for SQLNULL
values (also applies to the return value of the SQL functioncurrent_timestamp
)
If dates and timestamps are supported by the backend, the following R types are used:
lubridate::Date for dates (also applies to the return value of the SQL function
current_date
)lubridate::POSIXct for timestamps (also applies to the return value of the SQL function
current_timestamp
)
R has no built-in type with lossless support for the full range of 64-bit or larger integers. If 64-bit integers are returned from a query, the following rules apply:
Values are returned in a container with support for the full range of valid 64-bit values (such as the
integer64
class of the bit64 package)Coercion to numeric always returns a number that is as close as possible to the true value
Loss of precision when converting to numeric gives a warning
Conversion to character always returns a lossless decimal representation of the data