2016-04-25 11 views
-1

Ich habe eine Freeradius-mysql Abfrage von Daten auszuwählen, in den acctstarttime mehr als 30 Tage sind:Daten auswählen, wo Datumzeit weniger als 30 Tage sind

unten ist die Abfrage:

SELECT SUM(acctinputoctets - 
      GREATEST((30 - UNIX_TIMESTAMP(acctstarttime)), 0)) + 
     SUM(acctoutputoctets - 
      GREATEST((30 - UNIX_TIMESTAMP(acctstarttime)), 0)) 
    FROM radacct 
WHERE username = 'user2' 
    AND UNIX_TIMESTAMP(acctstarttime) + acctsessiontime > 30 

würde ich gerne eine Abfrage der gleichen Art, die Daten wählt, wo acctstarttime ist weniger als 30 Tage und ich habe eine harte Zeit.

Kann jemand helfen?

+0

Welche Art von Datenbank verwenden Sie? Ich schätze MySQL, aber können Sie bitte bestätigen? –

+0

wenn möglich Tabelle mit Beispieldaten hinzufügen –

+0

ja ich benutze mysql. der accctstarttime Wert ist gleich wie "2016-04-24 06:20:45" –

Antwort

0

Try this:

SELECT acctstarttime 
FROM radacct 
WHERE acctstarttime < ADDDATE(acctstarttime, INTERVAL 30 DAY) 

Für mehr Informationen und Funktionen: Date and Time Functions

Verwandte Themen