diff --git a/docker/thirdparties/docker-compose/sqlserver/init/03-create-table.sql b/docker/thirdparties/docker-compose/sqlserver/init/03-create-table.sql index 09b1cd06e7..a491647e78 100644 --- a/docker/thirdparties/docker-compose/sqlserver/init/03-create-table.sql +++ b/docker/thirdparties/docker-compose/sqlserver/init/03-create-table.sql @@ -96,4 +96,8 @@ CREATE TABLE dbo.DateAndTime DateTimeOffsetColumn DATETIMEOFFSET ); +CREATE TABLE dbo.t_id ( + ID uniqueidentifier PRIMARY KEY, + Name nvarchar(100) +); diff --git a/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql b/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql index d912c18fcc..f4f67523df 100644 --- a/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql +++ b/docker/thirdparties/docker-compose/sqlserver/init/04-insert.sql @@ -60,3 +60,6 @@ VALUES ( '2023-06-25 14:30:45.1234567 -07:00' -- DATETIMEOFFSET ); +INSERT INTO dbo.t_id (ID, Name) VALUES (NEWID(), 'Data 1'); +INSERT INTO dbo.t_id (ID, Name) VALUES (NEWID(), 'Data 2'); + diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcSQLServerClient.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcSQLServerClient.java index 0f4b287698..8657b381b0 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcSQLServerClient.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcSQLServerClient.java @@ -81,6 +81,7 @@ public class JdbcSQLServerClient extends JdbcClient { case "ntext": case "time": case "datetimeoffset": + case "uniqueidentifier": return ScalarType.createStringType(); case "image": case "binary": diff --git a/regression-test/data/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.out b/regression-test/data/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.out index d689f4cf6c..c8053812c1 100644 --- a/regression-test/data/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.out +++ b/regression-test/data/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.out @@ -53,3 +53,6 @@ -- !filter3 -- 1 Make Doris Great! Make Doris Great! Make Doris Great! Make Doris Great! Make Doris Great! Make Doris Great! +-- !id -- +2 + diff --git a/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy b/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy index 00bf5cde10..6ced9b7d53 100644 --- a/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy +++ b/regression-test/suites/external_table_p0/jdbc/test_sqlserver_jdbc_catalog.groovy @@ -70,6 +70,7 @@ suite("test_sqlserver_jdbc_catalog", "p0,external,sqlserver,external_docker,exte order_qt_filter1 """ select * from test_char where 1 = 1 order by id; """ order_qt_filter2 """ select * from test_char where 1 = 1 and id = 1 order by id; """ order_qt_filter3 """ select * from test_char where id = 1 order by id; """ + order_qt_id """ select count(*) from (select * from t_id) as a; """ sql """ drop catalog if exists ${catalog_name} """