Type | Data type in SQL Server | Value range | Data type in AnalyticDB for MySQL | Data type in AnalyticDB for PostgreSQL | Data type in PostgreSQL | Data type in MySQL |
Integer | BIT | 1, 0, and NULL | BOOLEAN | BIT(1) | BIT |
TINYINT | 0 to 255 | TINYINT | SMALLINT | TINYINT |
SMALLINT | -32768 (-2^15) to 32767 (2^15 - 1) | SMALLINT | SMALLINT | SMALLINT |
INT | -2147483648 (-2^31) to 2147483647 (2^31 - 1) | INTEGER | INTEGER | INT |
BIGINT | -9223372036854775808 (-2^63) to 9223372036854775807 (2^63 - 1) | BIGINT | BIGINT | BIGINT |
Decimal | NUMERIC[ (p[ ,s] )] | -10^38 + 1 to 10^38 - 1 (1 <= p <= 38) | DECIMAL | DECIMAL | DECIMAL[ (p[ ,s] )] |
DECIMAL[ (p[ ,s] )] | -10^38 + 1 to 10^38 - 1 (1 <= p <= 38) | DECIMAL | DECIMAL | DECIMAL[ (p[ ,s] )] |
FLOAT | -1.79E + 308 to -2.23E - 308, 0, and 2.23E - 308 to 1.79E + 308 | DOUBLE | DOUBLE PRECISION | DOUBLE |
REAL | -3.40E + 38 to -1.18E - 38, 0, and 1.18E - 38 to 3.40E + 38 | FLOAT | REAL | DOUBLE |
Monetary | MONEY | -922337203685477.5808 to 922337203685477.5807 | DECIMAL(19, 4) | DECIMAL(19, 4) | DECIMAL |
SMALLMONEY | -214748.3648 to 214748.3647 | DECIMAL(10, 4) | DECIMAL(10, 4) | DECIMAL |
Date and time | DATE | 0001-01-01 to 9999-12-31 | DATE | DATE | DATE |
DATETIME | Date range: January 1, 1753 to December 31, 9999 Time range: 00:00:00 to 23:59:59.997 | DATETIME | TIMESTAMP(3) WITHOUT TIME ZONE | DATETIME |
DATETIME2[ (fractional seconds precision) ] | Date range: January 1, 1 CE to December 31, 9999 CE Time range: 00:00:00 to 23:59:59.9999999 | DATETIME | TIMESTAMP(7) WITHOUT TIME ZONE | DATETIME |
DATETIMEOFFSET [ (fractional seconds precision) ] | Date range: January 1, 1 CE to December 31, 9999 CE Time range: 00:00:00 to 23:59:59.9999999 Time zone offset range: -14:00 to +14:00 | TIMESTAMP | TIMESTAMP(7) WITH TIME ZONE | DATETIME |
SMALLDATETIME | The time is based on a 24-hour day, with seconds always zero (:00) and without fractional seconds. | DATETIME | TIMESTAMP WITHOUT TIME ZONE | DATETIME |
TIME [ (fractional second scale) ] | 00:00:00.0000000 to 23:59:59.9999999 | TIME | TIME(7) WITH TIME ZONE | TIME |
String | BINARY [ ( n ) ] | Valid values of n: 1 to 8000. | VARBINARY | BYTEA | BINARY |
VARBINARY [ ( n | max) ] | Valid values of n: 1 to 8000. max indicates that the maximum storage size is 2^31 - 1 bytes. | VARBINARY | BYTEA | VARBINARY |
CHAR [ ( n ) ] | Valid values of n: 1 to 8000. The storage size is n bytes. | VARCHAR | CHARACTER | If the length is greater than 65535, the data type is TEXT. If the length is greater than 255 and smaller than or equal to 65535, the data type is VARCHAR. If the length is smaller than or equal to 255, the data type is CHAR.
|
VARCHAR [ ( n | max ) ] | Valid values of n: 1 to 8000. max indicates that the maximum storage size is 2^31 - 1 bytes (2 GB). | VARCHAR | CHARACTER | If the length is greater than 65535, the data type is TEXT. If the length is smaller than or equal to 65535, the data type is VARCHAR.
|
NCHAR [ ( n ) ] | n defines the string size in byte-pairs. Valid values of n: 1 to 4000. The storage size is two times n bytes. | VARCHAR | CHARACTER VARYING | VARCHAR(200) |
NVARCHAR [ ( n | max ) ] | n defines the string size in byte-pairs. Valid values of n: 1 to 4000. max indicates that the maximum storage size is 2^30 - 1 characters (2 GB). | VARCHAR | CHARACTER VARYING | If the length is greater than 65535, the data type is TEXT. If the length is smaller than or equal to 65535, the data type is VARCHAR.
|
NTEXT | Variable-length Unicode data with a maximum string length of 1,073,741,823 (2^30 - 1) bytes. | VARCHAR | TEXT | TEXT |
TEXT | The maximum string length is 2,147,483,647 (2^31 - 1) bytes. | VARCHAR | TEXT | TEXT |
IMAGE | Variable-length binary data from 0 to 2,147,483,647 (2^31 - 1) bytes. | VARBINARY | BYTEA | BLOB |
Spatial (geography and geometry) | GEOGRAPHY | N/A | VARCHAR | Not supported | BLOB |
GEOMETRY | N/A | VARCHAR | Not supported | BLOB |
XML | XML ( [ CONTENT | DOCUMENT ] xml_schema_collection ) | N/A | VARCHAR | XML | TEXT |
Other types | UNIQUEIDENTIFIER | N/A | VARCHAR | CHARACTER(36) | VARCHAR(200) |
SQL_VARIANT | N/A | Not supported | Not supported | VARCHAR(200) |
HIERARCHYID | N/A | Not supported | Not supported | VARCHAR(200) |
SYSNAME | N/A | VARCHAR | CHARACTER VARYING(128) | VARCHAR(200) |