TYPO3을 사용하여 간단한 쿼리를 만들려고합니다. 이름이 숫자 값으로 시작하는 테이블에서 모든 결과를 검색하고 정렬하려고합니다. 불행히도 $ statement 변수를 만드는 것은 작동하지 않습니다. TYPO3 유형의 쿼리 ($query->matching
, $query->like
)를 사용하여이를 어떻게 수행 할 수 있습니까? 답변 주셔서 감사합니다.TYPO3 만들기 쿼리
UPDATE :
TYPO3 버전 : 내가 뭘하려 8.7.3
:
public function sortReferencesNumerically(){
$query = $this->createQuery();
$statement = 'select * from tx_referencemanager_domain_model_reference WHERE name REGEXP '^[0-9]' ORDER BY CAST(name as SIGNED INTEGER) ASC';
$query->statement($statement);
return $query->execute();
}
NewUpdate : 불행하게도 나는 그것이 작동조차 힘든는 $ 문 방법을 사용할 수 없습니다. 어쨌든 query-> statement 메소드없이 이것을 수행 할 수 있습니까? 나는 이것을 시도했지만 수치가 시작되는 테이블의 첫 번째 데이터 만 보여 주며 심지어 20-30과 같이 힘들다.
array_push($queryConstraints, $query->logicalOr([
$query->like('name', '0%'),
$query->like('name', '1%'),
$query->like('name', '2%'),
$query->like('name', '3%'),
$query->like('name', '4%'),
$query->like('name', '5%'),
$query->like('name', '6%'),
$query->like('name', '7%'),
$query->like('name', '8%'),
$query->like('name', '9%'),
]));
당신은 더 구체적 일 수 있습니다 당신이 시도 정확한 코드를 게시? 설정에 대한 자세한 내용 (TYPO3 버전, 확장자 등) –
문자열이 손상되었습니다. 작은 따옴표로 문자열을 캡슐화하는 경우 작은 따옴표를 사용하여 정규식을 구분하지 마십시오. – j4k3