Peter: Sql datensätze auslesen und anzahl der Resultate zeigen

Hallo @ all!

Ich möchte gerne mit select daten aus access auslesen unter der Bedingungung where name='otto' . So nun will ich aber nicht nur die Ergebnisse sehen, sondern auch eine Anzeige wieviele Ergebnisse gefunden wurden. Ich denke das ist nicht sehr schwierig für euch, aber sorry bin totaler Anfänger. Danke für eure Hilfe.

  1. yo,

    Ich möchte gerne mit select daten aus access auslesen unter der Bedingungung where name='otto' . So nun will ich aber nicht nur die Ergebnisse sehen, sondern auch eine Anzeige wieviele Ergebnisse gefunden wurden.

    am besten machst du das mit zwei abfragen, wobe bei Otto auf gross und kleinschreibung zu achten ist, eventuell eine funktion einsetzen.

    SELECT name, etc.. FROM tabelle WHERE name='Otto';

    und für die anzahl

    SELECT count(*) FROM tabelle WHERE name='Otto';

    Ilja

    1. SELECT name, etc.. FROM tabelle WHERE name='Otto';

      SELECT count(*) FROM tabelle WHERE name='Otto';

      Oh Super. Aber kann ich diese Statements auch verknüpfen? Ich weiß sonst nicht wie ich meine Asugabe gestalten soll, wenn ich 2 Abfragen habe.

      1. yo,

        Oh Super. Aber kann ich diese Statements auch verknüpfen? Ich weiß sonst nicht wie ich meine Asugabe gestalten soll, wenn ich 2 Abfragen habe.

        in SQL nicht wirklich, aggregatfunktionen wie count() geben immer nur einen wert zurück, eine ergebnisliste kann aus vielen bestehen. insofern kan man es nicht einfach mischen. einige sprachen bieten funktionen an, um eine ergebnisliste zu zählen, wie zum beispiel php mit mysql_num_rows(). ob das auch access macht, kann ich nicht sagen.

        Ilja

  2. use Mosche;

    Ich möchte gerne mit select daten aus access auslesen unter der Bedingungung where name='otto' . So nun will ich aber nicht nur die Ergebnisse sehen, sondern auch eine Anzeige wieviele Ergebnisse gefunden wurden. Ich denke das ist nicht sehr schwierig für euch, aber sorry bin totaler Anfänger. Danke für eure Hilfe.

    Du kannst due Anzahl der Datensätze zumindest mit select count(*) from blah where name='otto'; bestimmen. Ob es ohne zusätzliche Abfrage auch geht, weiß ich bei Access nicht.

    Wenn ich bspw. mit Perl auslese, würde mir mein Statement-Handle die Anzahl der Reihen in $sth->rows mitteilen.

    use Tschoe qw(Matti);

    --
      Anyone who quotes me in their sig is an idiot. -- Rusty Russell.
  3. Hallo Peter,

    ich hole mir die Anzahl der Treffer nachher über das Recordset:

    rs.Open sqlString, conDatabase
     ArrRows= rs.getrows
     call close_rs()
     call close_db()
     Dim numrows
     numrows = ubound(ArrRows,2)

    Wobei die Anzahl der Treffer gleich numrows + 1 ist.

    Gruß,
    fotzibaer

    1. Oh hab ich gleich probiert, klingt logisch aber bei mir kommt fehler

      Type mismatch: 'close_rs'

      Kannst du helfen?

    2. Ok nun jab ich es geschafft, aber er zählt nur noch di Datensätze und gibt sie mir nicht mehr aus