addFieldToSelect 대신 addExpressionFieldToSelect를 사용하는 것은 무엇입니까?


9

나는 Magento를 공부하고 있으며 addExpressionFieldToSelectover 의 사용법이 무엇인지 정말로 이해하지 못 addFieldToSelect합니까? 나는 내 독서의 어느 곳에서도 답을 찾지 못했습니다. 내가 알 수있는 한, 필드 이름을 다시 쓰는 것처럼 보이지만 다시 쓰는 배열을 전달하는 경우에만 가능합니다. 필드를 다시 작성해야하는 것을 아는 경우 왜 addFieldToSelect를 사용하여이 작업을 수행 할 수 없었습니까?

답변:


11

에서 임의의 SQL 식 addExpressionFieldToSelect()으로 Zend_Db_Expr인스턴스를 전달할 수 있습니다 .

예를 들어, 이것은 가능 addExpressionFieldToSelect()하지만 가능 하지는 않습니다 addFieldToSelect().

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

와 함께 SQL 쿼리 결과

SELECT UPPER(name) as name_in_upper_case FROM ...

fieldnames의 자리 표시자는 맨 위에 구문 설탕입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.