文章彙整

Magento1 新增篩選器屬性與範圍

By Astral Web 3 months agoNo Comments
首頁  /  Magento  /  Magento1 新增篩選器屬性與範圍

在Magento1裡你可以使用「addAttributeToFilter」與「addFieldToFilter」來篩選你的query結果,但是他們是在不同得場合使用。

 

addFieldToFilter:使用於一般的資料表

addAttributeToFilter:使用於EAV模組的資料表,例如:產品,客戶,銷售

addFieldToFilter 同樣支援以下參數

 

等於 => mysql “=” 

$_productCollection->addAttributeToFilter(‘status’, array(‘eq’ => 1))

不等於 => mysql “!=” 

$_productCollection->addAttributeToFilter(‘status’, array(‘neq’ => 1))

相似 =>mysql “LIKE”

$_productCollection->addAttributeToFilter(‘sku’, array(‘like’ => ‘test’))

不相似 =>mysql “NOT LIKE”

$_productCollection->addAttributeToFilter(‘sku’, array(‘nlike’ => ‘test’))

包含=>mysql “IN”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘in’ => arrat(‘1’,’2’,’3’)))

不包含=>mysql “NOT IN”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘nin’ => array(‘1’,’2’,’3’)))

空值=>mysql “IS NULL”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘null’ => true))

不為空值=>mysql “IS NOT NULL”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘notnull’ => true ))

大於=>mysql “>”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘gt’ => 3))

小於=>mysql “<”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘lt’ => 3))

大於等於=>mysql “>=”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘gteq’ => 3))

小於等於=>mysql “<=”

$_productCollection->addAttributeToFilter(‘entity_id’, array(‘lt’ => 3))

 

我們可以使用getSelect來查看我們所執行的語句

$_productCollection = Mage::getModel(‘catalog/product’)

                                 ->getCollection()

                                 ->load();

 

echo $_productCollection>getSelect();

 

以上是這次針對 addAttributeToFilter 與 addFieldToFilter 的資訊分享,若想接收最新的文章資訊,請務必訂閱我們的電子報,以及追蹤我們的臉書粉絲團,才能收到第一手的最新資訊喔!

以上內容由Astralweb 歐斯瑞編寫製作

 000

推薦文章

Categories:
  MagentoMagento開發

留下回應

你的電子郵件地址不會被公開.

取得獨家電子商務祕技

建立更好的策略靈感

跟上全球的網路趨勢

絕佳的電商解決方案

電子商務戰略全指南

每月發送電商戰略指南,只要填寫E-mail即可訂閱!

請到您的信箱確認,即可完成訂閱。