我正在创建一个DDL文件,以使用TEIID部署为VDB。源模型是MS SQ1。在源数据库中,有“地理数据类型”列。我正在尝试从地理数据类型中读取纬度和经度。
要在SQL Server中检索经纬度:
db.geogCol.Lat
db.geogCol.Long
[当使用select语句在ddl文件中创建视图并尝试通过传递给teiid来检索经/纬度时,将引发异常。 Teiid似乎认为.Lat和.Long是列,而它们是与地理位置数据列绑定的sql server函数。我如何执行此操作,以便将以上参数视为ms-sql
最接近的表示形式是源函数。您将需要创建源函数来表示它们。在sql服务器架构上:
create foreign function lat (geography geog) returns double
OPTIONS ("teiid_rel:native-query" '$1.Lat');
和Long相似。
Teiid确实具有st_x和st_y函数,但我认为它们当前不适合下推到sql server。