簡體   English   中英

TYPO3邏輯或數據庫查詢中的優先級

[英]prioritize in TYPO3 logicalOr database query

我想在TYPO3中創建一個數據庫查詢。 我想區分不同的sys_language_uids。

        $lanuageUid = $demand->getLanguageUid();
        if (isset($lanuageUid)) {
            $constraints['sys_language_uid'] = $query->logicalOr(
                [
                    $query->equals('sys_language_uid', 0),
                    $query->equals('sys_language_uid', $demand->getLanguageUid()),

                ]
            );
        }

我想要返回一定數量的記錄,這些記錄是使用setLimit()設置的; 假設最近的languageUid用於西班牙,0用於英語。 我要回3條記錄,但西班牙只有2條記錄,所以我要用英語寫最后一條記錄。 我最近的查詢只是給我排序的記錄。 但是我可以說我首先想要所有西班牙語記錄,然后再說,如果它們小於3,我想要英語中的剩余記錄?

我會用$ defaultOrderings做到這一點。

$this->setDefaultOrderings([
    'sys_language_uid' => \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_DESCENDING
]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM