TYPO3 - 在QueryBuilder API v8中使用SQL运算符

时间:2017-08-24 12:42:22

标签: typo3 typo3-extensions typo3-8.x

如何在此查询中使用SQL运算符(https://www.w3schools.com/sql/sql_operators.asp)?像例如$ uidMin = 5; $ uidMax = 20; ......

$uid = 10;
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('tt_content');
$queryBuilder->getRestrictions()->removeAll();
$statement = $queryBuilder  
    ->select('uid', 'pid', 'header')            
    ->from('tt_content')
    ->where(
       $queryBuilder->expr()->eq('uid', $uid)
    )           
    ->execute();    
while ($row = $statement->fetchAll()) {
    $this->view->assign('inet', $row);
}

我尝试的是例如(http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/query-builder.html)。

$uidMin = 5;
$uidMax = 20;
...
$queryBuilder->expr()->between('uid', $uidMin, $uidMax)

......但没有工作。

1 个答案:

答案 0 :(得分:0)

这有什么作用:

$queryBuilder->expr()->andX(
    $queryBuilder->expr()->gt('uid', $uidMin),
    $queryBuilder->expr()->lt('uid', $uidMax)
)   

...但是()之间仍然没有工作......