楼主: dandan_9075
6756 32

请问sql包含语句怎么写 [推广有奖]

  • 3关注
  • 2粉丝

硕士生

52%

还不是VIP/贵宾

-

威望
0
论坛币
21 个
通用积分
2.5503
学术水平
1 点
热心指数
4 点
信用等级
1 点
经验
1215 点
帖子
134
精华
0
在线时间
110 小时
注册时间
2012-3-12
最后登录
2024-1-2

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
例如,我要把表中TEMP34中_LHAND 列中所有包含数据集RULE_1中LH列中字符的观察值找出来,程序如下
PROC SQL;
CREATE TABLE TEMP4 AS
SELECT TEMP34.*
FROM RULE_1,TEMP34
WHERE TEMP34._LHAND ? RULE_1.LH ;
QUIT;

但是不报错,也没有结果,会出现一句“执行该查询涉及到执行无法优化的一个或多个 Cartesian 产品连接”
请问怎么办啊?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:sql proc sql Create Select Elect sql

沙发
颜非如玉 发表于 2012-11-24 21:55:45 |只看作者 |坛友微信交流群
让我们情何以堪啊?百度一下,结果百度出你的提问了。。。

使用道具

藤椅
webgu 发表于 2012-11-25 09:31:19 |只看作者 |坛友微信交流群
颜非如玉 发表于 2012-11-24 21:55
让我们情何以堪啊?百度一下,结果百度出你的提问了。。。
proc sql;
  create table new as
  select *
  from sashelp.class
  where  name ? "A";
  QUIT;

  data demo1;
     name1="ABC";sex=1;output;
         name1="DEF" ;sex=0;output;
run;

data demo2;
     name2="B";output;
         name2="C";output;
         name2="E";output;
         run;

         proc sql;
           create table want as
           select *
           from demo1 as a , demo2 as b
           where a.name1 ?b.name2;
           quit;
log:
NOTE: The execution of this query involves performing one or more Cartesian product joins that can not be optimized.
NOTE: Table WORK.WANT created, with 3 rows and 3 columns.

因为是多表查询,应该会产生笛卡尔集。上面的简单的测试是可以跑出结果的。
SAS资源
1. SAS 微信:StatsThinking
2. SAS QQ群:348941365

使用道具

板凳
dandan_9075 在职认证  发表于 2012-11-25 16:55:48 |只看作者 |坛友微信交流群
webgu 发表于 2012-11-25 09:31
proc sql;
  create table new as
  select *
谢谢哈,我用了你写的这段是可以运行的,但是为什么我用来做我要分析的数据就不行呢?是不是因为数据大的原因。我的demo1有几千条记录,demo2有几百条记录,而且变量name2不是一个字符,是一串字符,是不是跟这些有关呢

使用道具

报纸
redbaby_jia 发表于 2012-11-26 13:03:08 |只看作者 |坛友微信交流群
in 语句不行么?

使用道具

地板
playmore 发表于 2012-11-26 13:20:06 |只看作者 |坛友微信交流群
  1. PROC SQL;
  2. CREATE TABLE TEMP4 AS
  3. SELECT TEMP34.*
  4. FROM RULE_1,TEMP34
  5. WHERE TEMP34._LHAND in (SELECT LH FROM RULE_1) ;
  6. QUIT;
复制代码
playmore邀请您访问ChinaTeX论坛!!!进入ChinaTeX论坛

使用道具

7
dandan_9075 在职认证  发表于 2012-11-26 14:03:12 |只看作者 |坛友微信交流群
playmore 发表于 2012-11-26 13:20
还是不行

使用道具

8
ziyenano 发表于 2012-11-26 14:09:23 |只看作者 |坛友微信交流群
用compress函数把空格去掉

使用道具

9
dandan_9075 在职认证  发表于 2012-11-26 15:56:44 |只看作者 |坛友微信交流群
redbaby_jia 发表于 2012-11-26 13:03
in 语句不行么?
不行

使用道具

10
dandan_9075 在职认证  发表于 2012-11-26 15:57:49 |只看作者 |坛友微信交流群
ziyenano 发表于 2012-11-26 14:09
用compress函数把空格去掉
你好,其实我是在做关联规则分析,现在是想筛选规则。rule_3是项集数为3的规则,rule_4项集数为4的规则,现在想把rule_4前件包含rule_3,同时置信度提高倍数大于0.05的规则找出来。用的程序是别人的,如下:
PROC SQL;
CREATE TABLE TEMP34 AS /* TEMP34为剪除部分四项规则后的规则集*/
SELECT RULE_4.*
FROM RULE_3,RULE_4
WHERE RULE_4._LHAND ? RULE_3._LHAND AND RULE_4.CONF>RULE_3.CONF*(0.05+1);quit;
但是就是运行不出结果。
数据如附件两张excel表所示

rule_4.xls

180.5 KB

rule_3.xls

180.5 KB

使用道具

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

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

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

GMT+8, 2024-5-3 13:06