Яке використання addExpressionFieldToSelect над addFieldToSelect?


9

Я вчуся Magento , і я не дуже розумію , що таке використання addExpressionFieldToSelectза кадром addFieldToSelect? Я ніде не знайшов відповіді в своєму читанні. Наскільки я можу сказати, це, здається, переписує імена полів, але тільки якщо ви переходите в масив з переписати. Чому ви не могли просто зробити це за допомогою addFieldToSelect в першу чергу, якщо ви знаєте, як саме поле слід переписати?

Відповіді:


11

В addExpressionFieldToSelect(), ви можете передавати Zend_Db_Exprекземпляр з довільним виразом SQL.

Так, наприклад, це можливо з addExpressionFieldToSelect(), але не з addFieldToSelect():

$collection->addExpressionFieldToSelect(
    'name_in_upper_case',
    new Zend_Db_Expr('UPPER(name)'),
    []
);

і призводить до запиту SQL з

SELECT UPPER(name) as name_in_upper_case FROM ...

Заповнювачі імен полів - це просто синтаксичний цукор зверху.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.