Forum: Datenbanken
Delphi
by Neutral General,
20. Jul 2016
Ja gut, dass ist halt das was "FIRST 3" tut. Es liefert dir die ersten 3 Datensätze der Ergebnismenge. Und wenn die Ergebnismenge nicht so eingeschränkt oder/und sortiert wurde, dass die ersten 3 Datensätze auch die größten sind, dann bekommst du natürlich Müll.
Aber wie du das machen kannst wurde ja schon beschrieben.
Forum: Datenbanken
Delphi
by Neutral General,
15. Jul 2016
Aber du kannst diese Sachen genauso im Report ausgeben ohne zusätzliche Felder:
SELECT
datediff(MINUTE, tabelle.zeit1, tabelle.zeit2)
FROM tabelle
Und auch First3 lässt sich so ermitteln, wenn auch etwas aufwändiger.
Das First3-Feld schreit nur so nach Inkonsistenz.
Forum: Datenbanken
Delphi
by Neutral General,
15. Jul 2016
Also in einem normalen SELECT wirds glaube ich echt knifflig aber es gibt ja Execute-Blöcke:
EXECUTE BLOCK
RETURNS (user_id int, zeit1 timestamp, zeit2 timestamp, minbetween int, first3 int)
As
BEGIN
FOR
SELECT DISTINCT
tabelle.user_id
FROM tabelle
INTO :user_id