Hi also hab das jetzt versucht aber irgendwie bekomm ichs nich hin Die view1 und view3 is klar aber bei view2 bekomm ich immer irgendnen Agregatfunktionsfehler, sprich er l�sst mich nicht nur nach zu_id guppieren.
Ich weis ja nicht inwieweit das bei access und sql-server verschieden ist arbeite grad mit a2k k�nntest du da nochmal drauf eingehen. Hab schon ziemlich viel rumprobiert aber es will nich hinhauen. Und k�nntest du nochmal den view4 bischen genauer erkl�ren? Bin da leider noch nich fit mit den sql's Und noch ne Frage w�rs eventuell besser dies mit 2 tabellen zu l�sen? Hab das jetzt auch schon mit 2 probiert aber da isses das gleiche mit der gruppierung ich bring einfach die doppelten nich raus. Danke ----- Original Message ----- From: "Joachim van de Bruck" <[EMAIL PROTECTED]> To: "ASP Datenbankprogrammierung" <[EMAIL PROTECTED]> Sent: Friday, May 31, 2002 5:59 PM Subject: [aspdedatabase] AW: Abfrage > Hallo! > > > also probier ich's nochmal. > > Tja, die Antwort auf Deine letzte Frage wurde m. E. am gleichen Tag > schon in einem anderen Thread beantwortet ... > > > Ich bastle an nem Forum und jetzt m�chte ich als Startseite des Forums > > die 50 Fragen ausgeben die zu letzt beantwortet wurden oder die neu > sind > > sortiert nach Datum/Uhrzeit absteigend. > > Aber das klingt dann doch ganz anders. ;-) > > > Jetzt hab ich 3 Tabellen( Gruppen, Messages, User ) wobei eigentlich > nur > > Messages relevant ist. > > Messages-Felder: > > # message_id(auto-wert) > > # zu_id( ist 0 wenn's ne frage ist ansonsten zu_id=message_id) > > #datum/uhrzeit > > usw. > > > > Jetzt kann ich zwar ein recordset machen das mir die neusten > > DS zur�ckgibt, aber da Fragen und antworten in einer Tabelle liegen > bekomm > > ich > > ja , statt nur der neuen fragen und der zuletzt beantworteten fragen , > > nur die DS absteigend sortiert also fragen und antworten. > > > > Wie mach ich das jetzt am besten �ber ne abfrage (geht das in einer > > Abfrage?) > > das ich die neuen fragen bekomme und die fragen > > die zuletzt beantwortet wurden und auch die Anzahl der antworten zu > den 50 > > neusten fragen. > > > > Ich hoff jetzt hab ich's verst�ndlicher erkl�rt. > > Jo, das hab ich kapiert. > > Wenn es immer nur eine Antwort gibt, also keine Antwort auf eine > Antwort, dann ist das mit einer Datenbankabfrage zu l�sen (ich verteile > es trotzdem auf mehrere, damit's einfacher wird, letztendlich rufst Du > aber nur eine auf): > > View 1 - TOP50_questions - die 50 neuesten Fragen > SELECT TOP 50 message_id AS id, message_datum > >FROM messages > WHERE zu_id = 0 > ORDER BY message_datum DESC > > View 2 - TOP50_answers die 50 Fragen mit den 50 neuesten Antworten > SELECT TOP 50 zu_id AS id, MAX(message_datum) > >FROM messages > WHERE zu_id > 0 > GROUP BY zu_id > ORDER BY message_datum DESC > > View 3 - TOP100_threads - View 1 und View 2 verbinden > SELECT id, message_datum > >FROM TOP50_questions > UNION > SELECT id, message_datum > >FROM TOP50_answers > > View 4 - TOP50_start - Nur diese View rufst Du in ASP auf! > SELECT DISTINCT TOP 50 *, > (SELECT COUNT(*) > FROM messages AS B > WHERE B.zu_id = A.message_id) AS answers > >FROM messages AS A INNER JOIN TOP100_threads > ON messages.message_id = TOP100_threads.id > ORDER BY TOP100_threads.message_datum DESC > > In View 4 wird auch die Anzahl der Antworten auf eine Frage mit einem > Sub-Select ermittelt. > > Achtung - ich habe die Views nicht getestet, also keine Gew�hr. Aber Du > kannst das ja sehr einfach direkt in der Datenbank testen. > > Freundliche Gr��e > Joachim van de Bruck > > > > > > | [aspdedatabase] als [EMAIL PROTECTED] subscribed > | http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv > | Sie k�nnen sich unter folgender URL an- und abmelden: > | http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp > | [aspdedatabase] als [email protected] subscribed | http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp
