AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Suche bestimmten SQL Code

Ein Thema von Plague · begonnen am 28. Okt 2005 · letzter Beitrag vom 29. Okt 2005
Antwort Antwort
Seite 1 von 3  1 23      
Plague

Registriert seit: 6. Okt 2003
591 Beiträge
 
#1

Suche bestimmten SQL Code

  Alt 28. Okt 2005, 09:03
Datenbank: MSSQL • Version: kA • Zugriff über: ASP
Hallo,

ich habe ein Problem, ich soll eine Statistikseite programmieren. Diese wird über ASP generiert und fragt soll eine Microsoft SQL Datenbank abfragen.

Ich habe alles soweit fertig, bis auf den SQL Code. Den bekomme ich einfach nicht hin.

Und zwar soll er:
Die Anzahl aller Einträge aus 5 unterschiedlichen Spalten zusammen addieren.

Ich glaube das ist etwas blöd erklärt.
Es geht also darum abzufrufen, wieviel Eintrage in einer Datenbank vorhanden sind (aber nur aus diesen 5 Spalten - denn es gibt insgesamt 12).
Wie müsste ich sowas machen?

Gruß
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#2

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 09:07
Das ganze sollte mit SELECT COUNT(*) FROM tablename WHERE klausel gehen.

Am besten machst Du 2 Schritte:

1.) Die Select-Abrage, die Dir genau die Datensätze liefert die Du zählen willst
2.) Die Abfrage der Spalten gegen COUNT(*) ersetzen.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Plague

Registriert seit: 6. Okt 2003
591 Beiträge
 
#3

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 09:14
Aber darin habe ich doch keine Addition...
Hier bekomme ich doch nur die Anzahl der Einträge.

War von mir blöd erklärt.

Das sind alles INT Datenbankspalten.
Wenn also in der
1. 5
2. 4
3. 1
4. 0 und
5. 10
stehen würde, möchte ich nicht 5 herrausbekommen weil 5 Eingaben "NOT NULL" sind, sondern ich möchte 20 herrausbekommen, weil ich 1. + 2. + 3. + 4. + 5. rechnen will!

geht sowas überhaupt?
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 09:21
Mach doch ein berechnendes Feld das die automatisch zusammenaddiert und lies dann einfach das aus

Müsste eigentlich gehen oder?

Editder schau mal in der LOCALSQL.hlp nach "arithmetische Operatoren", vielleicht hilft dir das weiter
Martin Weber
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#5

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 09:24
Zitat von Plague:
Und zwar soll er:
Die Anzahl aller Einträge aus 5 unterschiedlichen Spalten zusammen addieren.
Das ist COUNT(*). Count gibt die Anzahl der Datensätze aus.

Was Du willst ist die SUMME der Werte in einer Spalte, und da gibt es die Funktion SUM.

SELECT SUM(spaltenname) FROM tablename WHERE klausel
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 09:26
hmm.. ich glaub ich halt mich doch besser aus solchen Dingen raus bevor ich das nicht besser kann und überlass den Profis das Feld
Martin Weber
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#7

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 09:32
Angel: Dein Lösungsansatz ist gar nicht so abwegig. Sollte eine solche Abfrage sehr häufig abgesetzt werden müssen wäre es aller Wahrscheinlichkeit nach performanter eine View anzulegen die genau diesen Wert zurückgibt und dann nur die View abzufragen. Das Ergebnis einer View wird nämlich in aller Regel gecached bis die zugrundeliegenden Daten / Pages invalidiert werden. Eine solche Abfrage wird nicht so lange gecached und demnach häufiger durch die DB neu berechnet.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 10:28
Zitat:
Angel: Dein Lösungsansatz ist gar nicht so abwegig. Sollte eine solche Abfrage sehr häufig abgesetzt werden müssen wäre es aller Wahrscheinlichkeit nach performanter eine View anzulegen die genau diesen Wert zurückgibt und dann nur die View abzufragen. Das Ergebnis einer View wird nämlich in aller Regel gecached bis die zugrundeliegenden Daten / Pages invalidiert werden. Eine solche Abfrage (welche meinst du, meine oder die andere?) wird nicht so lange gecached und demnach häufiger durch die DB neu berechnet.
Martin Weber
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#9

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 11:16
Huch. Sorry, ich rutsche gerne in Details ab..

Also: Eine View ist eine Art 'virtuelle' Tabelle in einer Datenbank. Diese virtuelle Tabelle ist das Ergebnis einer in die Datenbank eingegebenen Abfrage. Sozusagen eine 'fest verdrahtete' SQL-Abfrage die auf einen Tabellennamen hört.

Diese View wird erstmalig generiert wenn Du diese virtuelle Tabelle abfragt. Die Datenbank führt das Statement das hinter dieser Tabelle steht aus und merkt sich das Ergebnis sowie die Stellen wo die Daten herkommen. Diese Ergebnis wird also (im Cache) zwischengespeichert, also gecachet. Bei einer neuen Abfrage dieser View wird also das gemerkte Ergebnis ausgeliefert und es muss nicht neu berechnet werden. Das ganze ist also in der Regel schneller (performanter) als jedes mal die Abfrage selber abzuschicken.

Ändern sich nun die Daten in der Datenbank merkt diese das und verwirft (invalidiert) das Zwischenergebnis, so dass die nächste Abfrage neu berechnet und somit wieder gültig (valide) ist.

Die normale Abfrage ohne View (besser: deren Ergebnis) wird nicht so lange zwischengespeichert und demnach häufiger neu berechnet, was wieder Performance / Leistung kostet.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#10

Re: Suche bestimmten SQL Code

  Alt 28. Okt 2005, 11:32
Martin Weber
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 15:58 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