AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Computed by Ausdruck mit SELEECT SUM berechnen
Thema durchsuchen
Ansicht
Themen-Optionen

Computed by Ausdruck mit SELEECT SUM berechnen

Ein Thema von mojo777 · begonnen am 4. Apr 2005 · letzter Beitrag vom 6. Apr 2005
Antwort Antwort
mojo777

Registriert seit: 10. Sep 2003
402 Beiträge
 
#1

Computed by Ausdruck mit SELEECT SUM berechnen

  Alt 4. Apr 2005, 10:02
Datenbank: ib • Version: 6 • Zugriff über: sql
Guten Morgen!
Hat jemand schon Erfahrungen mit den Computed By Ausdrücken in INterbase?
Ich will ein Felt erstellen, welches anzeigt, wieviele Transaktionen der Kunde bereits durchgeführt hat.
Die Berechnung will ich nicht in delphi ausführen, da es ziemlihc lange dauerte als ich es ausprobiert habe.
Hier kurz die Idee:

Delphi-Quellcode:
CREATE TABLE KUNDEN (
    KND_ID INTEGER,
    KND_ANREDE CHAR (4) CHARACTER SET NONE DEFAULT 'Herr' COLLATE NONE,
    KND_NACHNAME VARCHAR (50) CHARACTER SET NONE NOT NULL COLLATE NONE,
    KND_VORNAME VARCHAR (50) CHARACTER SET NONE NOT NULL COLLATE NONE,
    KND_GEBOREN DATE,
(...)
    KND_RATING INTEGER COMPUTED BY(??????????)
    PASSWORT VARCHAR (20) CHARACTER SET NONE COLLATE NONE);
Alles dreht sich um das Feld KND_RATING.
Dort soll das FELD ANZ aus dieser sql-abfrage stehen:
Delphi-Quellcode:
SELECT SUM(1) AS ANZ
FROM TRANSACTIONS t
WHERE t.TRN_KND_ID=:KND_ID GROUP BY t.TRN_KND_ID
Vielen Dank im VOraus!
Muh macht die kUh
  Mit Zitat antworten Zitat
Albi

Registriert seit: 4. Mai 2003
Ort: Berlin
458 Beiträge
 
Delphi 7 Professional
 
#2

Re: Computed by Ausdruck mit SELEECT SUM berechnen

  Alt 6. Apr 2005, 17:20
Hallo,

hättest Du die Suche zu hilfe genommen wärst bestimmt auf die Antwort gestoßen.

Hier im Forum suchencomputed By

Wenn ich das richtig verstehe, dann willst Du in dem Feld Knd-Rating immer die Anzahl der bisherigen Tansactionen zu stehen haben. Wäre es dann nicht sinnvoller dies mit Count zu lösen und das zur Laufzeit immer neu berechnen zu lassen? Dann sparst Du dir die schreibzugriffe auf der DB.

Ansonsten kannst Du den Computed by so benutzen:

Code:
Create Table Test (
ID Integer,
Test1 Integer,
Test2 Integer,
Gesamt Integer Computed BY (Test1+Test2))
Gruß

Albi
  Mit Zitat antworten Zitat
mojo777

Registriert seit: 10. Sep 2003
402 Beiträge
 
#3

Re: Computed by Ausdruck mit SELEECT SUM berechnen

  Alt 6. Apr 2005, 19:13
hi alibi,
also das hab ich ja gelesen mit comupted by (test1+test2) aber das ist zu simpel.
Count kommt der sache schon näher, aber ich habe noch keine konkrete vorstellung wie der code aussehen soll...
hier ein versuch.. bitte korrigiere mich.
Delphi-Quellcode:
SELECT KND_ID, KND_NAME COUNT(t.TRN_ID) FROM KUNDEN
JOIN TRANSACTION t ON TRN_KND_ID=KND_ID
WHERE KND_ID=:KND_ID
GROUP BY KND_ID, KND_NAME
gruß

mojo

edit:1 Hey das klappt ja!!!
danke!
Muh macht die kUh
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz