openGauss SQL参考—函数和操作符:文本检索函数和操作符(1)

文本检索函数和操作符

文本检索操作符

  • @@

    描述:tsvector类型的词汇与tsquery类型的词汇是否匹配

    示例:

    openGauss=# SELECT to_tsvector('fat cats ate rats') @@ to_tsquery('cat & rat') AS RESULT;
     result 
    --------
     t
    (1 row)
    
  • @@@

    描述:@@的同义词

    示例:

    openGauss=# SELECT to_tsvector('fat cats ate rats') @@@ to_tsquery('cat & rat') AS RESULT;
     result 
    --------
     t
    (1 row)
    
  • ||

    描述:连接两个tsvector类型的词汇

    示例:

    openGauss=# SELECT 'a:1 b:2'::tsvector || 'c:1 d:2 b:3'::tsvector AS RESULT;
              result           
    ---------------------------
     'a':1 'b':2,5 'c':3 'd':4
    (1 row)
    
  • &&

    描述:将两个tsquery类型的词汇进行“与”操作

    示例:

    openGauss=# SELECT 'fat | rat'::tsquery && 'cat'::tsquery AS RESULT;
              result           
    ---------------------------
     ( 'fat' | 'rat' ) & 'cat'
    (1 row)
    
  • ||

    描述:将两个tsquery类型的词汇进行“或”操作

    示例:

    openGauss=# SELECT 'fat | rat'::tsquery || 'cat'::tsquery AS RESULT;
              result           
    ---------------------------
     ( 'fat' | 'rat' ) | 'cat'
    (1 row)
    
  • !!

    描述:tsquery类型词汇的非关系

    示例:

    openGauss=# SELECT !! 'cat'::tsquery AS RESULT;
     result 
    --------
     !'cat'
    (1 row)
    
  • @>

    描述:一个tsquery类型的词汇是否包含另一个tsquery类型的词汇

    示例:

    openGauss=# SELECT 'cat'::tsquery @> 'cat & rat'::tsquery AS RESULT;
     result 
    --------
     f
    (1 row)
    
  • <@

    描述:一个tsquery类型的词汇是否被包含另一个tsquery类型的词汇

    示例:

    openGauss=# SELECT 'cat'::tsquery <@ 'cat & rat'::tsquery AS RESULT;
     result 
    --------
     t
    (1 row)
    

除了上述的操作符,还为tsvector类型和tsquery类型的数据定义了普通的B-tree比较操作符(=、<等)。

posted @ 2024-07-30 10:53  openGauss-bot  阅读(5)  评论(0)    收藏  举报