我正在尝试通过 Golang 接口(interface)获取我在雪花上执行的查询的查询 ID。在执行查询后的雪花 UI 上,我们会获得查询 ID 的链接以及结果。我不确定如何以编程方式获取此查询 ID。不确定我是否做得对,但这就是我所拥有的 - 使用连接字符串连接到雪花;使用此连接来执行查询。除了结果,我还想要查询 ID。我是雪花的新手,任何有关如何完成此操作的帮助将不胜感激。
import (
"database/sql"
"log"
)
var db *sql.DB
func init() {
db, err := sql.Open("snowflake", "<connection string>")
if err != nil {
log.Fatal(err)
}
}
func callDB() {
type result struct {
ID string
Name string
}
row := db.QueryRow("SELECT ID, NAME FROM EMPLOYEE") // get query id as well
if err := row.Scan(&result.ID, &result.Name); err != nil {
log.Fatal(err)
}
...
...
...
}
func main() {
callDB()
}
最佳答案
您可以使用 SnowflakeResult
获取查询 ID或 SnowflakeError
,或者您也可以直接向 Snowflake 提交查询以使用 LAST_QUERY_ID
SQL 中可用的函数。这里有一些引用文件供您引用:
https://docs.snowflake.com/en/sql-reference/functions/last_query_id.html
https://godoc.org/github.com/snowflakedb/gosnowflake
关于go - 使用 Go 接口(interface)获取雪花查询的查询 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63971205/