SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 706|回复: 2
打印 上一主题 下一主题

请教下面的WHERE语句是否有更高效的表达方式

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2009-11-23 03:45:34 | 只看该作者

请教下面的WHERE语句是否有更高效的表达方式

如题,语句如下。请教该如何修改来提高效率呢?谢谢!

DATA X;
        SET Y;
        WHERE ZName like 'AZATHIOP%' OR ZName like 'IMURA%' OR ZName like 'AZASAN%'
                OR ZName like 'CYCLOSP%' OR ZName like 'GENGRAF%' OR ZName like 'NEORAL%'
                OR ZName like 'SANGCYA%' OR ZName like 'SANDIMMU%' OR ZName like 'MYCOPHENOL'
                OR ZName like 'ATGAM%' OR ZName like 'THYMOGLOBU' OR ZName like 'ANTI-THYMO';
RUN;

因为ZName很多,感觉上面的表达有点冗长,但自己又找不到其他更好的表达方式。期待大家不吝赐教。谢谢!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2009-12-2 12:49:01 | 只看该作者

Re: 请教下面的WHERE语句是否有更高效的表达方式

可以优化的,试试下面的语句,":"表示以后面的字符开头

DATA X;
SET Y;
WHERE ZName
in [b:wngfecfj][color=#FF0000:wngfecfj]: [/color:wngfecfj][/b:wngfecfj]( "AZATHIOP", "IMURA", 'AZASAN', "CYCLOSP", "GENGRAF","NEORAL","SANGCYA"
                  ,"SANDIMMU","MYCOPHENOL","ATGAM","THYMOGLOBU","ANTI-THYMO");
run;
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2009-12-3 00:06:35 | 只看该作者

Re: 请教下面的WHERE语句是否有更高效的表达方式

in:
嗯,多谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-6 06:24 , Processed in 0.113949 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表