sql >> Database >  >> RDS >> Mysql

Hoe selecteer ik alle records die 10 minuten binnen de huidige tijdstempel vallen in MySQL?

De meest efficiënte manier zou zijn om je tijdstempel (en alleen tijdstempel, zonder functies erop) te vergelijken met een uitdrukking die als constant kan worden berekend voor elke rij, op deze manier kan mysql de index gebruiken die is gedefinieerd in je tijdstempelkolom.

SELECT * FROM myTable
WHERE last_seen >= NOW() - INTERVAL 10 MINUTE

Je kunt altijd proberen EXPLAIN SELECT ... om te zien of een index kan worden gebruikt om rijen te vinden die voldoen aan uw WHERE-voorwaarde zonder dat u elke rij in de tabel hoeft te controleren.



  1. UNION ALL vs OR-voorwaarde in sql-serverquery

  2. Hoe MySQL-database te herstellen van .myd-, .myi-, .frm-bestanden

  3. Hoe de maxrecursion-optie voor een CTE in een Table-Valued-Function in te stellen?

  4. Hoe DevOps DBaaS (Database-as-a-Service) zou moeten gebruiken om hun applicatie-ontwikkeling te optimaliseren