2008年11月23日(日)更新 |
■where句の論理演算子 AND, OR
たけち: 前回はwhere句を使って、検索の絞込みの例をみたね。 さらら: えぇ。 たけち: 今回はwhere句の別の例を試してみよう さらら: はい。 たけち: where句では、条件を絞り込むための式に、ANDとORが使えるんだ。 さらら: へぇ〜。じゃあ、いろいな複雑な検索条件が書けるのね。 たけち: そうだね。 |
|
■関数: 文字列関数
たけち: それと、XQueryではXMLデータを扱うために便利なようにいろいろな関数が用意されているんだ。 さらら: へぇ。 たけち: 関数には、文字列(string)、論理、数値、日付、シーケンス、QNAME、ノードなどのカテゴリーがあるけど、今回は文字列関数を使ってみるね。 さらら: はい。どんなのかしら。 たけち: 今回は文字列(string)関数を紹介するね。 |
文字列(string)関数 |
関数名 | 概要 |
---|---|
fn:codepoints-to-string | Unicodeコードポイントのならびに相当する文字列を戻します。 |
fn:compare | 2つの文字列を比較します。 |
fn:concat | 指定した文字列を連結した文字列を戻します。 |
fn:contains | 文字列に指定した文字列が含まれるかどうかを判断します。 |
fn:ends-with | 文字列が指定した文字列で終わっているかどうかを判断します。 |
fn:lower-case | 文字列を小文字に変換します。 |
fn:matches | 文字列が指定されたパターンに一致するかどうかを判断します。 |
fn:normalize-space | 文字列から、前後の空白を除去し、文字列内部の連続した空白文字列をひとつの空白文字に置き換えます。 |
fn:normalize-unicode | 文字列をUnicode正規化します。 |
fn:replace | 文字列を指定されたパターンで置き換えします。 |
fn:starts-with | 文字列が指定された文字列で始まっているかどうかを判断します。 |
fn:string | 指定した値の文字列を戻します。 |
fn:string-join | 文字列を連結した文字列を戻します。 |
fn:string-length | 文字列の長さを戻します。 |
fn:string-to-codepoints | 文字列に対するUnicodeのコードポイントの並びを戻します。 |
fn:substring | 文字列の一部の文字列を戻します。 |
fn:substring-after | 文字列の指定された文字列の後ろの文字列を戻します。 |
fn:substring-before | 文字列の指定された文字列の前の文字列を戻します。 |
fn:tokenize | 文字列を分割した文字列の並びを戻します。 |
fn:tokenize | 文字列を指定した区切り文字で分割した文字列の並びを戻します。 |
fn:translate | 文字列の指定した文字列を(別の)指定した文字列で置き換えます。 |
fn:upper-case | 文字列を大文字に変換します。 |
さらら: たくさんあるわね。 たけち: 今回は、比較的よく使いそうなものでfn:containsを使ってみよう。 さらら: はい。 たけち: 前回のwhere句の例では、poem要素のpoet属性の内容が"額田王"のpoem要素に絞り込んだけど、今回は、その条件に、さらに、yomiの内容に"あかね"を含んだものに絞り込んでみよう。 さらら: それだと、「あかねさす紫野行き標野行き野守は見ずや君が袖振る」という歌が検索結果として得られるのね。 たけち: そうだね。じゃ、さっそく、例を実行してみよう。 |
poem要素の検索例: whereで絞り込み |
コマンドエディタで |
さらら: あっ、予想通り、「あかねさす紫野行き標野行き野守は見ずや君が袖振る」のpoem要素が表示されたわ。 たけち: 前回のwhere句に、and fn:contains($input/yomi, 'あかね')が追加されているのがわかるね。fn:contains関数で、yomi要素の内容にあかねを含んでいるものに絞り込んでいるんだね。 さらら: はい。 たけち: 図でこの様子を確認しておこうね。 さらら: はい。 |
さらら: なるほど。私にもわかるわ。これってうろ覚えの歌を検索するときに便利よね。(^ ^; たけち: そうだね。 さらら: はい。わかったわ。 たけち: これからも少しずつ複雑な検索式にトライしてみようね。 さらら: は〜い。ありがと。 →次回はorder by句です。 (^ ^; |
|