我想在Stata中使用预处理语句,如下面的(伪代码)示例所示:
for each key in keylist
odbc load, exec("SELECT * FROM table where tablekey = $key")
do stuff
end
如何将参数值key
引入我的语句?我已经尝试过字符串连接,局部变量等,但没有任何效果。我想知道是否有像Java(SELECT * FROM Table WHERE tablekey = ?
)中那样的预备语句。
答案 0 :(得分:2)
在Stata中阅读help local
。本地宏以单引号(在1的左侧)开始,以结束单引号结束(在Enter的左侧)。然后可能是help foreach
。我想正确的语法是
local keylist "the actual list of keys"
foreach key of local keylist {
odbc load, exec("SELECT * FROM table where tablekey = `key'")
save thisdataset`key', replace
}
等
(Stata是我所知道的唯一编程环境:))。