Autor |
Beitrag |
mexx
      
Beiträge: 1183
|
Verfasst: Mi 17.05.06 10:00
Ich brauche eine SQL-Anweisung, mit der ich ein Ergebniss erhalte. Stellt euch zum Beispiel eine Tabelle mit 1 Spalte vor, welche zahlen von 1-3 enthält. Dabei ist die 1 3x vorhanden, die 2 5x und die 3 6x. Mit welcher SQL-Anweisung kann ich nun DEN Wert slektieren, der am häufigsten vorkommt? In meinem Beispiel die 3.
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: Mi 17.05.06 10:08
SQL-Anweisung 1:
| select wert, max(count(wert)) group by wert |
_________________ Markus Kinzler.
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 17.05.06 10:14
Fehlermeldung: subsystem name
max(count(wert)) das will er nicht akzeptieren
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mi 17.05.06 10:21
probiers mal damit
SQL-Anweisung 1:
| select count(*) as anzahl, deinfeld from deinetable group by deinfeld order by anzahl desc; |
dann steht der wert in der ersten zeile, den auslesen und du hast es
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: Mi 17.05.06 10:27
Doppelte Aggregatfunktionen mögen manche DBMS nicht. Vielleich gehts so:
SQL-Anweisung 1:
| select haeuf, max( haeuf) from (select count(wert) as haeuf from tabelle group by wert ) group by haeuf |
_________________ Markus Kinzler.
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 17.05.06 10:31
Der Punkt geht an ZeitGeist87. Ich erhalte zwar die Counts aller vorhandenen Werte, aber das ist ok, dass kann ich in Delphi wiederum abfangen. Danke an alle, die geholfen haben!!!
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 17.05.06 10:50
Ich muss meine Aussage zurück nehmen, es gibt doch noch Probleme. ZeitGeists Vorschlag ist gut, aber das order by wird nicht akzeptiert, somit erhalte ich nicht den höchstenwert ganz oben und kann diesen auch nicht entnehmen.
mkinzlers Vorschlag scheitert an den 2. select, das wird nicht akzeptiert.
Es handelt sich um eine Interbase Datenbank im SQL-Dialect 3.
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: Mi 17.05.06 10:53
Wenn möglich würde ich dir Vorschalgen auf FB 2 umzusteigen, da funktionieren derived-Queries.
_________________ Markus Kinzler.
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mi 17.05.06 10:55
mit interbase dbs kenn ich mich nich so gut aus..
ich such mal =)
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 17.05.06 10:56
Das ist nicht möglich. Aber ich kann mir nicht vorstellen, dass man so ein Ergebniss nicht auch von meiner DB erhalten kann.
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mi 17.05.06 11:15
was für fehlermeldung bringt er bei order by?
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 17.05.06 11:17
Ich habs.
SQL-Anweisung 1:
| select count(*), deinfeld from deinetable group by deinfeld order by count(*) desc; |
Der konnte mit dem Name der Spalte für count nix anfangen.
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|