楼主: 滞点
2275 2

[有偿编程] sas sql 如何按照某规则创建table [推广有奖]

  • 1关注
  • 0粉丝

博士生

92%

还不是VIP/贵宾

-

威望
0
论坛币
1326 个
通用积分
5.8500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
43262 点
帖子
102
精华
0
在线时间
618 小时
注册时间
2015-7-27
最后登录
2024-4-23

20论坛币
最近在处理数据需要用sql从数据集中按某规则筛选数据,遇到的问题如下:
我有20个规则(筛选条件),但有的数据集只能满足其中几个,sql会在这时报错停止,但对每个数据集来定规则太费时间,想请教不知道有没有办法在满足某规则时执行,而不满足则跳过该规则,继续下个规则呢?

code如下,
  1. proc sql noprint;
  2. create table total_lu50 as select 行标签 as id,'30304'n as PORT , '50101'n as IND1,'50102'n as IND2,'50201'n as HDRES,'50203'n as LDRES1,'50204'n as LDRES2,'70102'n as URB1,'70201'n as URB2,'90801'n as TB from LU;
  3. run;
复制代码


感谢帮忙!

关键词:Table ABLE sql ABL tab
沙发
lira12 发表于 2018-3-28 03:01:18 |只看作者 |坛友微信交流群
use COALESCE() Function.

create table total_lu50 as select COALESCE(行标签, ' ') as id, COALESCE('30304'n, ' ') as PORT , COALESCE('50101'n, ' ')as IND1,....

Hope this helps.

使用道具

藤椅
滞点 发表于 2018-3-28 08:29:10 |只看作者 |坛友微信交流群
lira12 发表于 2018-3-28 03:01
use COALESCE() Function.

create table total_lu50 as select COALESCE(行标签, ' ') as id, COALESCE ...
感谢您的回复,但在按您的建议修改code后若某规则在某数据集中没有的话,还是会出错停止运行

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-24 02:38