Om ditt mål är att faktiskt räkna raderna, använd COUNT(*) . num_rows används vanligtvis (enligt min erfarenhet) bara för att bekräfta att fler än noll rader returnerades och fortsätter i så fall. Det kommer förmodligen att ta MySQL längre tid att läsa upp många valda rader jämfört med aggregeringen på COUNT även om själva frågan tar lika lång tid.