如何过滤集合
筛选比较参数
Magento 还提供了一种灵活的使用比较运算符进行过滤的方法。以下是有效运算符及其语法的列表:
所有比较参数都可以传递给 addFieldToFielter()
或 addAttributeToFilter()
方法的第二个参数。
$collection_of_products->addAttributeToFilter('visible',array("eq"=>1));
对照 | 参数数组 | 生成的 SQL 代码段 |
---|---|---|
等于 | 阵列( 当量=> $变种) | WHERE(`my_field` = $ var) |
不等于 | 阵列( NEQ => $变种) |
WHERE(`my_field` != $ var) |
喜欢 | 阵列( 喜欢=> $变种) | WHERE(`my_field` LIKE $ var) |
不喜欢 | 阵列( nlike => $变种) |
WHERE(`my_field`不喜欢$ var) |
是 | 阵列( 是=> $变种) | WHERE(`my_field` IS $ var) |
在 | 阵列( 在=> $变种) | WHERE(`my_field` IN($ var)) |
不在 | 阵列( “nin 的”=> $变种) | WHERE(`my_field` NOT IN($ var)) |
空值 | 阵列( 空=>真) | WHERE(`my_field`为空) |
不是空的 | 阵列( NOTNULL =>真) |
WHERE(`my_field`不是 NULL) |
比…更棒 | 阵列( GT => $变种) |
WHERE(`my_field`> $ var) |
少于 | 阵列( LT => $变种) |
WHERE(`my_field` <$ var) |
大于或等于 | 阵列( gteq => $变种) |
WHERE(`my_field`> = $ var) |
小于或等于 | 阵列( lteq => $变种) |
WHERE(`my_field` <= $ var) |
在 Set 中查找 | 阵列( finset =>数组($ VAR)) |
WHERE(find_in_set($ var,`my_field`) |
从和到 | array(from => $ var1,to => $ var2) |
WHERE(`my_field`> = $ var1 AND`my_field` <= $ var2) |