Vad gör databasen egentligen?
En fråga med en GROUP BY eller och ORDER BY kan behöva generera hela resultatuppsättningen och sedan sortera/aggregera den innan en rad returneras. En fråga som skannar en stor tabell kan hitta 50 rader i de första par blocken och sedan läsa ytterligare hundratusen block innan den hittar ytterligare ett.
Jag föreslår att du ignorerar VB-koden och lägger upp databaskoden.