Ich möchte 5 E-Mails von jedem Konto von Inbox
Ordner von "Mails" Tabelle Tabelle enthalten Feld von MailAccountID.Wie bekomme ich 5 Datensätze jeder Gruppe mit der Reihenfolge, indem ich mit mysql absteige?
Table details:
Table Name: Mails
Folder field: FolderName
Email Account field: MailAccountID
Ich habe versucht, Lösung vorgeschlagen. Es funktioniert gut Wenn ich Abfrage in MySQL-Abfrage-Fenster ausführen, aber es so viele Fehler wie Stored Procedure werfen.
Stored Procedure:
CREATE PROCEDURE `SP_GetMailAccountData`()
BEGIN
select * from
(
select m.*,
if(m.mailaccountid <> @prev ,@rn:=1,@rn:[email protected]+1) rn,
@prev:=m.mailaccountid prev
from (select @rn:=0,@prev:='') p, mails m
where foldername = 'inbox'
order by m.mailaccountid,m.dt desc
) s
where s.rn <= 3;
END
Sie verwendet haben 'Grenze 5' So werden Sie natürlich nur 5 Ergebnisse erhalten – Takarii