sql >> Database >  >> RDS >> Mysql

tel het aantal rijen en haal alleen de laatste rij uit een tabel

SELECT  a.*, b.numOfTakingExams
FROM    employeeExam a
        INNER JOIN
        (
            SELECT  employee_id,
                    MAX(date) max_Date,
                    COUNT(*) numOfTakingExams 
            FROM    employeeExam
            GROUP BY course_ID, employee_id
        ) b ON  a.employee_id = b.employee_id AND
                a.date = b.max_Date

je kunt ook het laatste record krijgen met de maximale ID als het is ingesteld als AUTO_INCREMENT , deze zoekopdracht hieronder levert hetzelfde resultaat op als de bovenstaande zoekopdracht,

SELECT  a.*, b.numOfTakingExams
FROM    employeeExam a
        INNER JOIN
        (
            SELECT  employee_id,
                    MAX(id) max_Date,
                    COUNT(*) numOfTakingExams 
            FROM    employeeExam
            GROUP BY course_ID, employee_id
        ) b ON  a.employee_id = b.employee_id AND
                a.id = b.max_Date


  1. QUERY- EN ECHO-gegevens IN HTML-INPUT-velden

  2. MySQL:verzoek om een ​​JSON-object te maken met Array

  3. Hoe de datum in een ander formaat in orakel weer te geven

  4. Hoe COUNT() werkt in SQL Server