【问题标题】:SAS Enterprise Guide using 1 query on multiple data setsSAS Enterprise Guide 对多个数据集使用 1 个查询
【发布时间】:2011-04-01 10:20:48
【问题描述】:

我想通过单个查询运行多个数据集(格式相同),并为每个输入的数据集生成一个输出。

SAS Enterprise Guide 中有可能吗?

【问题讨论】:

    标签: sas enterprise-guide


    【解决方案1】:

    对于 EG 中的大多数任务,您可以右键单击它们并选择“选择输入数据...”,然后更改输入数据。我假设您正在谈论的过滤和查询任务没有此选项。

    我能想到的重用查询的唯一方法是深入研究 SAS 代码。如果您对此感到满意,这里有一个建议(在 EG4.1 中,我想以后的版本类似):

    1. 从您的 使用过滤器的第一个数据集和 查询任务。
    2. 保存并关闭过滤器和查询对话框。
    3. 右键单击查询任务,然后 选择“添加为代码模板”。一个新的 代码对象将出现在 项目设计师。当你打开它, 你会看到 SAS 代码 由过滤和查询任务构建。
    4. 在这里,更改输入数据(它 将在from 子句中 SQL 代码)到不同的输入数据 设置,并更改输出数据的名称(见 create table xxx as)。你也可以 需要更改名称 在它说的地方输出数据 %_eg_conditional_dropds(xxx) 或 类似 - 这部分正在下降 与您的同名数据集 输出数据(如果存在)。

    这有点费力 - 如果你做很多这样的事情,我建议你跳进 SAS 编码,因为有很多方法可以做你所描述的事情,这比破解 EG 任务代码要容易得多: )

    【讨论】:

      【解决方案2】:

      编写 sas 代码以循环遍历在每个数据集上执行 sql 的数据集,并使用唯一标识符命名结果。不好玩的点和点击世界。

      【讨论】:

        【解决方案3】:

        不太确定一次需要运行多少个数据集,但也许可以使用动态提示?

        http://www.google.com/url?sa=t&source=web&cd=1&ved=0CBUQFjAA&url=http%3A%2F%2Fsupport.sas.com%2Fresources%2Fpapers%2Fproceedings10%2F041-2010.pdf&ei=khmjTeClJ4iCsQPV7PX5DA&usg=AFQjCNFotS3cbwYl5kCCpQUfqKYK3ndflQ&sig2=3ItVrgWXlegBzvjt4-rGAQ

        或者,通过将所有数据集附加在一起,然后在到达报告方后拆分为不同的输出,从不同的角度对其进行攻击......

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-12-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-09-29
          相关资源
          最近更新 更多