在《SAP2000過濾器使用規(guī)則》中提到,高級過濾的應(yīng)用需要由用戶定義過濾器字符串,用戶需要輸入的是SQL字符串,它是用于訪問和處理數(shù)據(jù)庫的標(biāo)準(zhǔn)計算機語言。應(yīng)用到高級過濾中的SQL字符串對應(yīng)于添加SQL WHERE子句的完整SQL
SELECT語句,此語句用來有條件地從表中選取數(shù)據(jù)。接下來以兩組例子說明使用SQL字符串應(yīng)用高級過濾。
1. 示例1
模型:SAP2000安裝目錄 > Verification > Analysis Examples > Example 1-024
表格:模型定義 >
Connectivity Data > Joint Coordinates > Table: Joint Coordinates
1.1 選擇X坐標(biāo)大于0的節(jié)點
使用SQL字符串"XorR > 0"選擇X坐標(biāo)大于0的所有節(jié)點,此高級過濾-SQL字符串的應(yīng)用如圖1所示,過濾結(jié)果如圖2所示。
圖1:示例1.1-SQL字符串

圖2:示例1.1-過濾結(jié)果
1.2 選擇Z坐標(biāo)大于12且小于14的節(jié)點
使用SQL字符串“Z > 12 AND Z < 14”選擇Z坐標(biāo)大于12且小于14的節(jié)點,此高級過濾-SQL字符串的應(yīng)用如圖3所示,過濾結(jié)果如圖4所示。
圖3:示例1.2-SQL字符串

圖4:示例1.2-過濾結(jié)果
2. 示例2
模型:新模型 > 模板 > 三維框架(運行分析)
表格:分析結(jié)果 >
Element Output > Frame Output > Table: Element Forces – Frames
通過應(yīng)用如圖5所示的SQL字符串,可以篩選框架單元1和2,且僅包含測站0和荷載工況DEAD的行結(jié)果,過濾結(jié)果如圖6所示。

圖5:示例2-SQL字符串

圖6:示例2-過濾結(jié)果
關(guān)于SQL字符串需要注意的是:
① 字母的大小寫不影響過濾結(jié)果;
② 文本數(shù)據(jù)必須括在單引號中,數(shù)值數(shù)據(jù)不必,且單引號必須為英文字符;
③ SQL運算符OR和AND前后需要用空格隔開,否則程序提示錯誤,無法篩選;
④ 示例2中,文本數(shù)據(jù)(Frame和OutputCase)后面的運算符“=”也可以用“LIKE”替換(注意前后需用空格隔開),但是數(shù)值數(shù)據(jù)(Station)不能用“LIKE”替換。替換后的SQL字符串如圖7所示。

圖7:示例2-SQL字符串(“LIKE”替換“=”)