close

wp_query参数meta_query比较操作符详解

首先是基本的操作符,跟符号本身意思一样。

=   equals 等于
!=  does not equal 不等于
>   greater than 大于
>=  greater than or equal to 大于等于
<   less than 小于
<=  less than or equal to 小于等于

LIKE 和 NOT LIKE 的意思

LIKE和NOT LIKE是SQL的操作符让你可以在查询的时候加入通配符%或者*,所以meta_query的时候跟这个沾边的都会查询出来。如:

array( 
    'key' => 'name', 
    'value' => 'Pat', 
    'compare' => 'LIKE'
)

这个意思就是当你查询的时候,不仅仅会跳出来Pat,甚至Patrick,Paticia等等前面三个字母为pat的都会返回出来,意思就是查询的是Pat*。

IN 和 NOT IN

IN和NOT IN 选择所有匹配给到的数组里面的数值,也就是value数组,所以你可以这么做:

array(
    'key'     => 'color', 
    'value'   => array('red', 'green', 'blue') 
    'compare' => 'IN'
)

这样会返回颜色值不管设置为red,green或者blue的数值。用NOT IN 则是相反的情况。这要求你在value里给到一个数组并包含超过两个数值。

BETWEEN and NOT BETWEEN

BETWEEN and NOT BETWEEN 允许你在一个数值段里面进行查询,比方说设置的value是10和50,那么就会查询并返回10和50之间的结果。这要求value设置的数值必须是两个。

array( 
    'key' => 'price', 
    'value' => array(20,30) 
    'compare' => 'BETWEEN'
)

NOT EXISTS

NOT EXISTS返回无key值或者key值value为空的情况,此时不需要设置value值:

array( 
    'key' => 'price', 
    'compare' => 'NOT EXISTS'
)
Share :
Tag :