<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Häufigkeit von Zahlen in Accessdatenbank ermitteln]]></title><description><![CDATA[<p>Hi Leutz,</p>
<p>ich habe ein Problem mit o.g. Title.</p>
<p>Ich schreibe gerade ein Programm, wo man unter anderem eine Webseite bewerten kann. (ich mach das mit Access zu Übungszwecken).</p>
<p>Dafür habe ich mal simple eine kleine Tabelle eingerichtet, die ungefähr so aus sieht und vote heißt.</p>
<blockquote>
<p>VoteID VoteWert<br />
1 -----&gt; 5<br />
2 -----&gt; 3<br />
3 -----&gt; 5<br />
4 -----&gt; 5<br />
5 -----&gt; 4</p>
</blockquote>
<p>Nun möchte ich ermitteln, mit welcher Zahl am meißten gevotet wurde.<br />
In dem Beispiel wurde ja 3x mit der 5 gevotet.</p>
<p>Mein Lösungsansatz sieht so aus:</p>
<pre><code class="language-cpp">vector&lt;int&gt; Anzahl;
vector&lt;int&gt; vote_wert;

DatenbankModul-&gt;ADOQuery-&gt;Close();
DatenbankModul-&gt;ADOQuery-&gt;SQL-&gt;Clear();
DatenbankModul-&gt;ADOQuery-&gt;SQL-&gt;Add(&quot;SELECT COUNT(VoteWert) AS Anzahl,VoteWert FROM vote GROUP BY VoteWert HAVING COUNT(VoteWert) &gt;2 ORDER BY 'DESC'&quot;);
DatenbankModul-&gt;ADOQuery-&gt;Open();
for(int i=0; i&lt;DatenbankModul-&gt;ADOQuery-&gt;RecordCount; i++)
        {
         Anzahl.push_back(DatenbankModul-&gt;ADOQuery-&gt;FieldByName(&quot;Anzahl&quot;)-&gt;AsInteger);
         vote_wert.push_back(DatenbankModul-&gt;ADOQuery-&gt;FieldByName(&quot;VoteWert&quot;)-&gt;AsInteger);
         DatenbankModul-&gt;ADOQuery-&gt;Next();
        }

 for(int j=0; j&lt;VoteWert.size(); j++)
        {
         for(int k=0; k&lt;Anzahl.size(); k++)
                {
                     FrameHauptframe1-&gt;Memo2-&gt;Lines-&gt;Add(Anzahl[k]);
                }
         FrameHauptframe1-&gt;Memo1-&gt;Lines-&gt;Add(lottozahl[j]);
       }
</code></pre>
<p>Ich habe mir das mal ausgeben lassen, und es zeigt mir die 5 an mit 3 Votes.<br />
Ich weiß ja vorher nie, wieviele Votes pro Zahl getätigt wurden, also ist die Bedingung</p>
<blockquote>
<p>HAVING COUNT(VoteWert) &gt;2</p>
</blockquote>
<p>mist.<br />
Wie kann ich das dynamisch machen? Also anstatt fest einen Wert reinzuschreiben (wie zb. &gt;2, oder &gt;10)?<br />
Wär echt über eine Hilfe dankbar.</p>
<p>grüße<br />
Gerd</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/74347/häufigkeit-von-zahlen-in-accessdatenbank-ermitteln</link><generator>RSS for Node</generator><lastBuildDate>Sat, 27 Jun 2026 23:13:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/74347.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 19 May 2004 14:56:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Häufigkeit von Zahlen in Accessdatenbank ermitteln on Wed, 19 May 2004 14:56:06 GMT]]></title><description><![CDATA[<p>Hi Leutz,</p>
<p>ich habe ein Problem mit o.g. Title.</p>
<p>Ich schreibe gerade ein Programm, wo man unter anderem eine Webseite bewerten kann. (ich mach das mit Access zu Übungszwecken).</p>
<p>Dafür habe ich mal simple eine kleine Tabelle eingerichtet, die ungefähr so aus sieht und vote heißt.</p>
<blockquote>
<p>VoteID VoteWert<br />
1 -----&gt; 5<br />
2 -----&gt; 3<br />
3 -----&gt; 5<br />
4 -----&gt; 5<br />
5 -----&gt; 4</p>
</blockquote>
<p>Nun möchte ich ermitteln, mit welcher Zahl am meißten gevotet wurde.<br />
In dem Beispiel wurde ja 3x mit der 5 gevotet.</p>
<p>Mein Lösungsansatz sieht so aus:</p>
<pre><code class="language-cpp">vector&lt;int&gt; Anzahl;
vector&lt;int&gt; vote_wert;

DatenbankModul-&gt;ADOQuery-&gt;Close();
DatenbankModul-&gt;ADOQuery-&gt;SQL-&gt;Clear();
DatenbankModul-&gt;ADOQuery-&gt;SQL-&gt;Add(&quot;SELECT COUNT(VoteWert) AS Anzahl,VoteWert FROM vote GROUP BY VoteWert HAVING COUNT(VoteWert) &gt;2 ORDER BY 'DESC'&quot;);
DatenbankModul-&gt;ADOQuery-&gt;Open();
for(int i=0; i&lt;DatenbankModul-&gt;ADOQuery-&gt;RecordCount; i++)
        {
         Anzahl.push_back(DatenbankModul-&gt;ADOQuery-&gt;FieldByName(&quot;Anzahl&quot;)-&gt;AsInteger);
         vote_wert.push_back(DatenbankModul-&gt;ADOQuery-&gt;FieldByName(&quot;VoteWert&quot;)-&gt;AsInteger);
         DatenbankModul-&gt;ADOQuery-&gt;Next();
        }

 for(int j=0; j&lt;VoteWert.size(); j++)
        {
         for(int k=0; k&lt;Anzahl.size(); k++)
                {
                     FrameHauptframe1-&gt;Memo2-&gt;Lines-&gt;Add(Anzahl[k]);
                }
         FrameHauptframe1-&gt;Memo1-&gt;Lines-&gt;Add(lottozahl[j]);
       }
</code></pre>
<p>Ich habe mir das mal ausgeben lassen, und es zeigt mir die 5 an mit 3 Votes.<br />
Ich weiß ja vorher nie, wieviele Votes pro Zahl getätigt wurden, also ist die Bedingung</p>
<blockquote>
<p>HAVING COUNT(VoteWert) &gt;2</p>
</blockquote>
<p>mist.<br />
Wie kann ich das dynamisch machen? Also anstatt fest einen Wert reinzuschreiben (wie zb. &gt;2, oder &gt;10)?<br />
Wär echt über eine Hilfe dankbar.</p>
<p>grüße<br />
Gerd</p>
]]></description><link>https://www.c-plusplus.net/forum/post/523512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/523512</guid><dc:creator><![CDATA[Gerd19]]></dc:creator><pubDate>Wed, 19 May 2004 14:56:06 GMT</pubDate></item><item><title><![CDATA[Reply to Häufigkeit von Zahlen in Accessdatenbank ermitteln on Wed, 19 May 2004 15:16:03 GMT]]></title><description><![CDATA[<p>Wofür brauchst Du denn überhaupt das HAVING?</p>
<p>Gruß,</p>
<p>Alexander</p>
]]></description><link>https://www.c-plusplus.net/forum/post/523527</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/523527</guid><dc:creator><![CDATA[Alexander Kempf]]></dc:creator><pubDate>Wed, 19 May 2004 15:16:03 GMT</pubDate></item></channel></rss>