2016-05-22 3 views
1

Hier die erste Abfrage, die TraineeID, die max nach Anzahl zurückgibt. Ich muss diese TraineeID in der zweiten Abfrage als Parameter in einer WHERE-Klausel verwenden. Gibt es einen Weg dies zu erreichen? Vielen Dank im Voraus.Wie kann ich Max gezählte ID in Where-Klausel als Parameter in Mysql

QUERY 1:

SELECT TraineeID, COUNT(TraineeID) as maxfinger 
FROM tbl_raw_attendance WHERE date(CreatedTime)='2016-04-13' 
GROUP by TraineeID ORDER by maxfinger DESC 
LIMIT 1 

QUERY 2:

SELECT @n := @n + 1 RowNumber, t.* 
FROM (select @n:=0) initvars, tbl_raw_attendance t 
WHERE date(t.CreatedTime)='2016-04-13' 

Antwort

1

Sie können es mit einer Sub-Abfrage tun:

SELECT @n := @n + 1 RowNumber, t.* 
FROM (select @n:=0) initvars, tbl_raw_attendance t 
WHERE date(t.CreatedTime)='2016-04-13' 
    AND t.TraineeID = (SELECT TraineeID FROM tbl_raw_attendance 
         WHERE date(CreatedTime)='2016-04-13' 
         GROUP by TraineeID ORDER by COUNT(TraineeID) DESC 
         LIMIT 1) 
+0

perfekt !! Danke Sir. –

Verwandte Themen