看板 Statistics 關於我們 聯絡資訊
※ 引述《liton (歐吉桑留學生)》之銘言: : ※ 引述《liton (歐吉桑留學生)》之銘言: : 原PO下條件的時候 程式條件也就跟著一對一的寫出來了 : 不就兩個條件而已? : '抓1101公司20090417前的日期' : 與==>或 : '抓1102公司20090612前的日期' : 這問題各位怎會想的那麼複雜啊? : proc sql; : create table b : as select * from test : where (test.comp_id eq 1101 and test.date le '17Apr2009'd) : '抓1101公司20090417前的日期' : or (test.comp_id eq 1102 and test.date le '12Jun2009'd) : '與抓1102公司20090612前的日期' : order by comp_id,date; : quit; t大的程式會產生9筆是因為要包含原資料阿 如果公司是1101 其date是20090417 所以小於20090417的有2筆 所以篩選小於20090417的資料會有3筆 (包含原1101 及對應的data:20090417) 當公司是1102時 其date是20090612 所以小於20090612的有5筆 所以篩選小於20090612的資料會有6筆 (包含原1102 及對應的data:20090612) 所以總共會有3+6=9筆資料,原po也有列出他希望得到的資料也是9筆 然後我根據您的程式執行 得到的output是 comp_id date a 1101 20090417 2.33 1102 20090612 1.42 似乎是沒有篩選到原po想要的結果 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.72.239
imaltar:test.comp_id eq 1101 只能抓到1101這筆資料 06/25 00:29
imaltar:不過原PO要的是能包含到所有的公司 06/25 00:30