---
title: "Wie kann man ein \"Query\" durch einen Vergleich innerhalb einer Tabellen einschränken (Bsp.: Feld1 > Feld2)"
url: "https://www.typo3.net/d/117825-wie-kann-man-ein-query-durch-einen-vergleich-innerhalb-einer-tabellen-einschraenken-bsp-feld1-feld2"
source: "typo3.net"
tags: ["Extensions","Extbase","Datenbank","Frage"]
created: "2014-04-08"
last_reply: "2014-04-10"
replies: 2
solved: false
page: 1
pages: 1
lang: "de"
---

# Wie kann man ein "Query" durch einen Vergleich innerhalb einer Tabellen einschränken (Bsp.: Feld1 > Feld2)

Extensions › Extbase · 2 Antworten · gestartet 2014-04-08

## Eröffnungsbeitrag

**dmdevelop** · 2014-04-08 · [Beitrag #1](https://www.typo3.net/d/117825-wie-kann-man-ein-query-durch-einen-vergleich-innerhalb-einer-tabellen-einschraenken-bsp-feld1-feld2/1)

Hallo zusammen,

ich arbeite jetzt schon länger mit Extbase zur Extensionentwicklung, aber bei meiner aktuellen Entwicklung  stoße ich gerade auf ein Problem, für das ich weder bei Google noch hier bisher eine Lösung gefunden habe.

Ich würde gerne meine Datenbankabfrage durch einen Vergleich zwischen zwei Tabellenfeldern eingrenzen, also z.B.: "Gib mir alle Datensätze bei denen Tabellenfeld 1 größer als Tabellenfeld 2 ist."

Klar gibt es Funktionen wie "greaterThan($propertyName, $operand)" etc., die habe ich natürlich auch schon oft verwendet, aber damit kann ich ja nur gegen einen konkreten Wert vergleichen, den ich als $operand übergebe, aber nicht gegen ein anderes Feld aus der gleichen Tabelle. Gibt es hierfür wirklich noch keine Implementierung in Extbase oder bin ich wirklich zu blöd. Klar kann ich das ganze über ein RAW-Query erreichen, aber ich hätte gedacht, dass es dafür eine bessere Lösung geben müsste.

Vielleicht kann mir ja jemand einen Tip geben, vielleicht ist ein RAW-Query derzeit auch wirklich der einzige Weg. Google, Foren und Extbase-Cheat-Sheet haben mich bisher leider nicht weitergebracht auf dem Weg der Erkenntnis ;)

Viele Grüße

Dominic

## Antworten

### [#2](https://www.typo3.net/d/117825-wie-kann-man-ein-query-durch-einen-vergleich-innerhalb-einer-tabellen-einschraenken-bsp-feld1-feld2/2) · protos · 2014-04-08

Hallo dmdevelop,

RAW Query ist glaub ich die richtige Wahl:

$query = $this->createQuery();
$selectQuery = 'SELECT * FROM table WHERE table.a > table.b';
$query->statement($selectQuery);
$query->execute();

Wenn ich hier rein sehe <https://github.com/TYPO3/TYPO3.CMS/blob/master/typo3/sysext/extbase/Classes/Persistence/Generic/Query.php> finde ich keine Methode wies anders gehen sollte.

Man kann sicher zwei Abfragen bauen und die danach vergleichen. Hat aber mit Performance nichts zu tun.

Viele Grüße

### [#3](https://www.typo3.net/d/117825-wie-kann-man-ein-query-durch-einen-vergleich-innerhalb-einer-tabellen-einschraenken-bsp-feld1-feld2/3) · dmdevelop · 2014-04-10

Danke :-) es scheint wohl wirklich die derzeit einzig sinnvolle Möglichkeit zu sein.

Viele Grüße

---

Quelle: „Wie kann man ein "Query" durch einen Vergleich innerhalb einer Tabellen einschränken (Bsp.: Feld1 > Feld2)“, typo3.net, https://www.typo3.net/d/117825-wie-kann-man-ein-query-durch-einen-vergleich-innerhalb-einer-tabellen-einschraenken-bsp-feld1-feld2
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
