gpt4 book ai didi

sql - Stata odbc 获取列注释作为标签

转载 作者:行者123 更新时间:2023-12-04 13:05:14 25 4
gpt4 key购买 nike

我正在尝试将数据从 impala sql 访问到 Stata:

clear all
#delimit;
odbc load, exec("
SELECT column_name
data_base_name.table_name
")
dsn("<my dsn>")
user("")
password("");
#delimit cr

查询工作正常,但标签为空。有什么方法可以将它们导入到 stata 中吗?

我通过以下方式创建评论:

ALTER TABLE  data_base_name.table_name
CHANGE column_name column_name string comment 'test comment';

所以当我导入 Stata 时,变量名 column_name 应该有标签“test comment”。这可能吗?或任何其他方式(我的意思是评论除外)?

最佳答案

help odbc 没有提到任何关于评论的内容,odbc describe 没有返回列评论,手册中也没有提到访问评论,所以没有' 似乎是一种直接的方式。这是一个解决方法,使用来自 SSC 的 moremata

odbc load, exec("DESCRIBE data_base_name.table_name") dsn("my dsn") clear
list

// Get variable names and comment labels
* ssc install moremata
mata: st_local("vars", invtokens(st_sdata(., ("name"))'))
mata: st_local("labels", mm_invtokens(st_sdata(., ("comment"))'))
local n_vars = _N

// Get actual data and label the variables
odbc load, exec("SELECT * FROM data_base_name.table_name") dsn("my dsn") clear
forval i = 1/`n_vars' {
cap confirm variable `:word `i' of `vars''
if !_rc label var `:word `i' of `vars'' "`:word `i' of `labels''"
}

关于sql - Stata odbc 获取列注释作为标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69839179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com