Appearance
検索条件式の書き方
!= OR&= AND- 条件式を複数回入力 = AND
この書き方は、SH・SHU・SHD の検索条件式で使用できます。
以下の表を使って、書き方と検索結果を説明します。
| 地域 | 商品 | 数量 |
|---|---|---|
| tokyo | ringo | 100 |
| tokyo | banana | 80 |
| osaka | ringo | 120 |
| nagoya | mikan | 90 |
組み合わせ
| 書き方 | 結果(行数・行) | 意味 |
|---|---|---|
条件式を 2 回に分けて入力(c1=tokyo → c2=ringo) | 1(tokyo/ringo) | AND。2 番目以降はそれまでの条件を通過したデータが対象です |
c1=tokyo&c2=ringo | 1(tokyo/ringo) | 1 つの条件式の中の AND です |
c1=tokyo!c2=ringo | 3(tokyo/ringo・tokyo/banana・osaka/ringo) | OR です |
c1=tokyo,osaka | 3(同上) | 同じ列の OR です |
c2=ringo!c2=mikan | 3(tokyo/ringo・osaka/ringo・nagoya/mikan) | 同じ列でも ! で OR にできます。, と同じです |
c1=tokyo,osaka&c2=ringo | 2(tokyo/ringo・osaka/ringo) | , の OR と & の AND の組み合わせです |
c1=osaka!c1=tokyo&c2=ringo | 2(tokyo/ringo・osaka/ringo) | & が ! より先に結ばれます。osaka または「tokyo かつ ringo」です |
c1=tokyo&c2=ringo!c1=osaka | 2(tokyo/ringo・osaka/ringo) | 同上です。順序を変えても同じです |
比較と一致
| 書き方 | 結果(行数・行) | 意味 |
|---|---|---|
c1=tokyo | 2(tokyo/ringo・tokyo/banana) | = は等しいデータを検索します |
c1<>tokyo | 2(osaka/ringo・nagoya/mikan) | <> は値を除外します |
c1<>tokyo,osaka | 1(nagoya/mikan) | , で並べた値のどれにも当てはまらない行です(<> のときは AND になります) |
c3>90 | 2(100・120) | > はより大きい数値を検索します |
c3>=90 | 3(100・120・90) | >= は以上の数値を検索します |
c3<=90 | 2(80・90) | <= は以下の数値を検索します(< はより小さい数値) |
c3>90&c3<120 | 1(100) | & で数値の範囲を指定できます |
c3=100,90 | 2(100・90) | 数値も , で並べられます |
c1=to* | 2(tokyo の 2 行) | * を末尾に置くと前方一致です |
c1=*ka | 1(osaka/ringo) | * を先頭に置くと後方一致です |
c1=*ok* | 2(tokyo の 2 行) | * を両側に置くと部分一致です |
c1=t?kyo | 2(tokyo の 2 行) | ? は任意の 1 文字です |
c1=* | 4 | 全行に一致します |
c3#90-100 | 2(100・90) | # は両端を含む範囲です |
c3#80-90,120-120 | 3(80・120・90) | 複数の範囲です。各要素は a-b の形で指定します |
c2<>"" | 4 | 空でないデータを検索します。" は半角です |
c2="" | 0 | 空であるデータを検索します |
S=*ringo* | 2(tokyo/ringo・osaka/ringo) | 列を限定せずページ全体を検索します |
C=*ringo* | 2(同上) | 行内を検索して該当行を抽出します(フォーマット行の無いページでの C= は SH だけ) |
# の端点や s / l を使った指定は、SH の数値範囲指定を参照してください。
大文字・全角・空白・引用符
| 書き方 | 結果 | 説明 |
|---|---|---|
c1=TOKYO | 0 | 右辺の値の大文字・小文字は区別されます |
C1=tokyo | 2(tokyo/ringo・tokyo/banana) | 左辺の c1 は大文字でも同じです |
c1=tokyo(全角) | 0 | 右辺の値の全角・半角は区別されます |
c3=100 | 1 | 右辺が 1 つの数値のときは全角数字でも同じです |
c3>90 | 2 | 右辺が 1 つの数値のときは全角数字でも同じです |
C1=tokyo | 2(tokyo/ringo・tokyo/banana) | 左辺の c1 や = は全角でも同じです |
c1=tokyo!c2=ringo | 3(tokyo/ringo・tokyo/banana・osaka/ringo) | ! は全角の ! でも同じです |
c1=tokyo&c2=ringo | 1(tokyo/ringo) | & は全角の & でも同じです |
c1=tokyo,osaka | 3(tokyo/ringo・tokyo/banana・osaka/ringo) | , は全角の , でも同じです |
c1= tokyo | 2 | 右辺の前後の空白は無視されます(= の前には空白を置けません) |
c1=tokyo | 2 | 右辺の末尾の空白は無視されます |
c1="tokyo" | 2 | 引用符で囲んでも同じです |
エラーにならないが件数が違う書き方
次の書き方は入力エラーになりませんが、想定した AND・OR にはなりません。
| 書き方 | 結果 | 説明 |
|---|---|---|
c1=tokyo or c2=ringo | 0 | or / and という語は使えません。右辺が「tokyo or c2=ringo」という文字列として比較されます |
c1=tokyo! | 2 | 末尾の ! は無視され、c1=tokyo と同じです |
c3=100,90 | 0 | , で複数の数値を並べると、全角数字は半角に直されません(c3=100,90 は 2) |
入力エラーになる書き方
次の書き方は「入力が不正です」と表示され、同じ条件式の入力に戻ります。右辺のない = / <> は 4.6.8 から、右辺のない > >= < <= # は 4.6.9 から入力エラーになります。
| 書き方 | 理由 |
|---|---|
c2<> | 右辺がありません |
c2>= | 右辺がありません |
c2= | 右辺がありません |
c1 =tokyo | c1 と = の間に空白があります |
c1=tokyo& | 末尾に & があります |
c1=tokyo!!c2=ringo | ! が連続しています |
c3#120 | # の値が a-b の形ではありません(s / l の単独指定は除く) |