Jmp : 選擇哪裡<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />您好,我會嘗試通過在腳本中選擇位置來生成新表,並將子表與另一個表合併
我成功地生成了一個成功的腳本,除非 Select Where 沒有找到符合條件的行?
你知道如果 select where return nothing 我怎麼能跳過腳本中的連接表部分嗎
問候
塞巴斯蒂安
回复:Jmp:選擇哪裡另外兩個例子使用如果( !是空的和我的首選嘗試(方法示例:
名字默認到這裡( 1個) ;
// 打開數據表並進行一些更改
dt =打開( “$SAMPLE_DATA/Big Class.jmp” ) ;
dt <<設置名稱( “桌子” ) <<
新建專欄( “身高體重” ,公式( :重量/ :高度) ) ;
// 打開另一個數據表
dt2 =打開( “$SAMPLE_DATA/Big Class.jmp” ) ;
dt2 <<選擇哪裡( :性別== “問” ) ;
dt3 = dt2 <<子集(
選定的行( 1個) ,
僅選定的列( 0 )
) ;
如果( !是空的( dt3 ) , //如果選擇的行== 0 dt3是一個空變量
dt4 = dt <<加入(
和( dt3 ) ,
通過匹配列( :姓名= :姓名) ,
下降倍數( 0 , 0 ) ,
包括不匹配項( 0 , 0 ) ,
保留主表順序( 1個)) , //無表打印錯誤日誌
打印( “空子集表” )
) ;
嘗試( dt4 = dt <<加入(
和( dt3 ) ,
通過匹配列( :姓名= :姓名) ,
下降倍數( 0 , 0 ) ,
包括不匹配項( 0 , 0 ) ,
保留主表順序( 1個))
, //捕獲表達式
打印( “加入失敗” )) ;
回复:Jmp:選擇哪裡你好seb38.cremer ,
多發性硬化症給出了正確的答案。但是,如果以下內容不夠明確:
名字默認到這裡( 1個) ;
// 打開數據表並進行一些更改
dt =打開( “$SAMPLE_DATA/Big Class.jmp” ) <<
設置名稱( “桌子” ) <<
新建專欄( “身高體重” ,公式( :重量/ :高度) ) ;
// 打開另一個數據表
dt2 =打開( “$SAMPLE_DATA/Big Class.jmp” ) ;
// 而不是使用 select 使用 get rows where - 它更健壯
選擇= dt2 <<獲取行在哪裡( :年齡== 12 ) ;
// 看看有沒有被選中。如果是子集並加入
如果( N行(選擇) > 0 ,
dt3 = dt2 <<子集(
行數(選擇) ,
選定的列( 0 ) // 帶來所有列
) ;
// 現在加入
dt3 <<加入(
和(數據表( “桌子” ) ) ,
通過匹配列( :姓名= :姓名) ,
下降倍數( 0 , 0 ) ,
姓名( “包括不匹配項” )( 0 , 0 ) ,
保留主表順序( 1個)
) ;
) ;
回复:Jmp:選擇哪裡可能有幾種方法可以做到這一點。 這是一個應該可行的想法,如果選擇哪裡()已應用:
如果( N行( dt <<獲取行(已選())) > 0 ,
dtsub <<加入( ... )
) ;
另一個想法沒有選擇哪裡()僅當任何行符合條件時才構成子集(與“F”代替“Q”進行比較):
dt =打開( “$SAMPLE_DATA/Big Class.jmp” ) ;
r = dt <<獲取行在哪裡( :性別== “問” ) ;
如果( N行( r ) ,
( dt <<子集(行( r ))) <<加入(和( dt ))
) ;