Zum Inhalt springen

Die Logik hinter = RECORDS verstehen

Erstellt am 10. März 2007 · Noch keine Antworten

Tags: Datenbank, Frage

sme ·

Hallo,

kann mir jemand auf die Sprünge helfen, beim Abrufen von Datensätzen mit RECORDS?

Da ich das Ganze mal grundsätzlich verstehen will und die diversen Referenzen schlecht kommentiert und meine Internet-Funstellen eher verwirrend waren, habe ich folgende Verallgemeinerung gemacht:

Es gibt eine Tabelle "tx_test" mit den Feldern "uid", "name", "bescheibung".
1. Aufgabe: Alle Datensätze auslesen, sortiert nach "name".
2. Aufgabe: Einen bestimmten Datensatz auslesen.
3. Aufgabe: Eine Funktion, z.B. Count() auf die Tabelle anwenden.

Zu 1 wäre die SQL-Entsprechung:

SELECT name, beschreibung FROM tx_test ORDER BY name ASC

Wie setze ich das in Typoscript um? Ich würde so anfangen:

page = PAGE
page.10 = RECORDS
page.10 {
  tables = tx_test
  conf.tx_test = TEXT
  conf.tx_test.field = name
  wrap = * | *
}

Leider funktioniert das so nicht und außerdem fehlen mir die Anweisungen für das zweite Feld und die Sortierung.

Zu 2 wäre die SQL-Entsprechung:

SELECT name, beschreibung FROM tx_test WHERE uid = 2 ORDER BY name ASC

Kann man hierzu einfügen?
source = 2
Wie kommt man auf die gewünschte Sortierung?

Zu 3 wäre die SQL-Entsprechung:

SELECT count(uid) FROM tx_test

Immerhin habe ich es geschafft, aus der tt_content-Tabelle ein Datum auszulesen:

page.20 = RECORDS
page.20 {
  tables = tt_content
  source.field = pid
  select.max = 1
  conf.tt_content = TEXT
  conf.tt_content.field = tstamp
  conf.tt_content.strftime = %e.%m.%Y
  wrap = * | *
}

Allerdings hätte ich gerne, daß es das neueste Datum überhaupt ist. Leider hängt es aber irgendwie mit dem angezeigten Datensatz zusammen. Und ohne "source.field = pid" geht überhaupt nichts.
Was macht eigentlich die Anweisung
source.field = ?

Mit SQL wäre das alles so einfach aber dieses verflixte Typoscript läßt mich verzweifeln.
Ich würde mich sehr freuen, wenn ihr mir ein wenig Licht geben könntet.

Herzlichen Dank! - Stefan